C¼°´«Í³C++
#include <assert.h>¡¡¡¡¡¡¡¡//É趨²åÈëµã
#include <ctype.h>¡¡¡¡¡¡¡¡ //×Ö·û´¦Àí
#include <errno.h>¡¡¡¡¡¡¡¡ //¶¨Òå´íÎóÂë
#include <float.h>¡¡¡¡¡¡¡¡ //¸¡µãÊý´¦Àí
#include <fstream.h>¡¡¡¡¡¡ //ÎļþÊäÈ룯Êä³ö
#include <iomanip.h>¡¡¡¡¡¡ //²ÎÊý»¯ÊäÈ룯Êä³ö
#include <iostream.h>¡¡¡¡¡¡//Êý¾ÝÁ÷ÊäÈ룯Êä³ö
#include <limits.h>¡¡¡¡¡¡¡¡//¶¨Òå¸÷ÖÖÊý¾ÝÀàÐÍ×îÖµ³£Á¿
#include <locale.h>¡¡¡¡¡¡¡¡//¶¨Òå±¾µØ»¯º¯Êý
#include <math.h>¡¡¡¡¡¡¡¡¡¡//¶¨ÒåÊýѧº¯Êý
#include <stdio.h>¡¡¡¡¡¡¡¡ //¶¨ÒåÊäÈ룯Êä³öº¯Êý
#include <stdlib.h>¡¡¡¡¡¡¡¡//¶¨ÒåÔÓÏÊý¼°ÄÚ´æ·ÖÅ亯Êý
#include <string.h>¡¡¡¡¡¡¡¡//×Ö·û´®´¦Àí
#include <strstrea.h>¡¡¡¡¡¡//»ùÓÚÊý×éµÄÊäÈ룯Êä³ö
#include <time.h>¡¡¡¡¡¡¡¡¡¡//¶¨Ò幨ÓÚʱ¼äµÄº¯Êý
#include <wchar.h>¡¡¡¡¡¡¡¡ //¿í×Ö·û´¦Àí¼°ÊäÈ룯Êä³ö
#include <wctype.h>¡¡¡¡¡¡¡¡//¿í×Ö·û·ÖÀà
//////////////////////////////////////////////////////////////////////////
±ê×¼ C++¡¡£¨Í¬ÉϵIJ»ÔÙ×¢Ê ......
C¼°´«Í³C++
#include <assert.h>¡¡¡¡¡¡¡¡//É趨²åÈëµã
#include <ctype.h>¡¡¡¡¡¡¡¡ //×Ö·û´¦Àí
#include <errno.h>¡¡¡¡¡¡¡¡ //¶¨Òå´íÎóÂë
#include <float.h>¡¡¡¡¡¡¡¡ //¸¡µãÊý´¦Àí
#include <fstream.h>¡¡¡¡¡¡ //ÎļþÊäÈ룯Êä³ö
#include <iomanip.h>¡¡¡¡¡¡ //²ÎÊý»¯ÊäÈ룯Êä³ö
#include <iostream.h>¡¡¡¡¡¡//Êý¾ÝÁ÷ÊäÈ룯Êä³ö
#include <limits.h>¡¡¡¡¡¡¡¡//¶¨Òå¸÷ÖÖÊý¾ÝÀàÐÍ×îÖµ³£Á¿
#include <locale.h>¡¡¡¡¡¡¡¡//¶¨Òå±¾µØ»¯º¯Êý
#include <math.h>¡¡¡¡¡¡¡¡¡¡//¶¨ÒåÊýѧº¯Êý
#include <stdio.h>¡¡¡¡¡¡¡¡ //¶¨ÒåÊäÈ룯Êä³öº¯Êý
#include <stdlib.h>¡¡¡¡¡¡¡¡//¶¨ÒåÔÓÏÊý¼°ÄÚ´æ·ÖÅ亯Êý
#include <string.h>¡¡¡¡¡¡¡¡//×Ö·û´®´¦Àí
#include <strstrea.h>¡¡¡¡¡¡//»ùÓÚÊý×éµÄÊäÈ룯Êä³ö
#include <time.h>¡¡¡¡¡¡¡¡¡¡//¶¨Ò幨ÓÚʱ¼äµÄº¯Êý
#include <wchar.h>¡¡¡¡¡¡¡¡ //¿í×Ö·û´¦Àí¼°ÊäÈ룯Êä³ö
#include <wctype.h>¡¡¡¡¡¡¡¡//¿í×Ö·û·ÖÀà
//////////////////////////////////////////////////////////////////////////
±ê×¼ C++¡¡£¨Í¬ÉϵIJ»ÔÙ×¢Ê ......
Ò»¡¢º¯Êýµ÷ÓõĻù±¾²½Öè
º¯Êýµ÷ÓôóÖ°üÀ¨ÒÔϼ¸¸ö²½Öè¡£
£¨1£©²ÎÊýÈëÕ»£º½«²ÎÊý´ÓÓÒÏò×óÒÀ´ÎѹÈëϵͳջÖС£
£¨2£©·µ»ØµØÖ·ÈëÕ»£º½«µ±Ç°´úÂëÇøµ÷ÓÃÖ¸ÁîµÄÏÂÒ»ÌõÖ¸ÁîµØÖ·Ñ¹ÈëÕ»ÖУ¬¹©º¯Êý·µ»ØÊ±¼ÌÐøÖ´ÐС£
£¨3£©´úÂëÇøÌø×ª£º´¦ÀíÆ÷´Óµ±Ç°´úÂëÇøÌø×ªµ½±»µ÷Óú¯ÊýµÄÈë¿Ú´¦¡£
£¨4£©Õ»Ö¡µ÷Õû£º¾ßÌå°üÀ¨£º
±£´æµ±Ç°Õ»Ö¡×´Ì¬Öµ£¬Òѱ¸ºóÃæ»Ö¸´±¾Õ»Ö¡Ê±Ê¹Óã¨EBPÈëÕ»£©¡£
½«µ±Ç°Õ»Ö¡Çл»µ½ÐÂÕ»Ö¡£¨½«ESPÖµ×°ÈëEBP£¬¸üÐÂÕ»Ö¡µ×²¿£©¡£
¸øÐÂÕ»Ö¡·ÖÅä¿Õ¼ä£¨°ÑESP¼õÈ¥ËùÐè¿Õ¼äµÄ´óС£¬Ì§¸ßÕ»¶¥£©¡£
¶þ¡¢º¯Êýµ÷ÓÃÔ¼¶¨£º
µ÷ÓÃÔ¼¶¨µÄÉùÃ÷
²ÎÊýÈëջ˳Ðò
»Ö¸´Õ»Æ½ºâµÄλÖÃ
__cdecl
ÓÒ→×ó
ĸº¯Êý
__fastcall
ÓÒ→×ó
×Óº¯Êý
__stdcall
ÓÒ→×ó
×Óº¯Êý
Èý¡¢¾ßÌåµÄ±íÏÖ
£¨1£© __cdecl
º¯Êý±¾Éí²»ÇåÀí¶ÑÕ»£¬µ÷ÓÃÕ߸ºÔðÇåÀí¶ÑÕ»¡£ÓÉÓÚÕâÖֱ仯£¬Cµ÷ÓÃÔ¼¶¨ÔÊÐíº¯ÊýµÄ²ÎÊýµÄ¸öÊýÊDz»¹Ì¶¨µÄ
£¨2£© __fastcall
º¯ÊýµÄµÚÒ»¸öºÍµÚ¶þ¸öDWORD²ÎÊý£¨»òÕ߳ߴç¸üСµÄ£©Í¨¹ýecxºÍedx´«µÝ£¬ÆäËû²ÎÊýͨ¹ý´ÓÓÒÏò×óµÄ˳Ðòѹջ
±»µ÷Óú¯ÊýÇåÀí¶ÑÕ»
£¨3£© __stdcall
  ......
Ò»¡¢º¯Êýµ÷ÓõĻù±¾²½Öè
º¯Êýµ÷ÓôóÖ°üÀ¨ÒÔϼ¸¸ö²½Öè¡£
£¨1£©²ÎÊýÈëÕ»£º½«²ÎÊý´ÓÓÒÏò×óÒÀ´ÎѹÈëϵͳջÖС£
£¨2£©·µ»ØµØÖ·ÈëÕ»£º½«µ±Ç°´úÂëÇøµ÷ÓÃÖ¸ÁîµÄÏÂÒ»ÌõÖ¸ÁîµØÖ·Ñ¹ÈëÕ»ÖУ¬¹©º¯Êý·µ»ØÊ±¼ÌÐøÖ´ÐС£
£¨3£©´úÂëÇøÌø×ª£º´¦ÀíÆ÷´Óµ±Ç°´úÂëÇøÌø×ªµ½±»µ÷Óú¯ÊýµÄÈë¿Ú´¦¡£
£¨4£©Õ»Ö¡µ÷Õû£º¾ßÌå°üÀ¨£º
±£´æµ±Ç°Õ»Ö¡×´Ì¬Öµ£¬Òѱ¸ºóÃæ»Ö¸´±¾Õ»Ö¡Ê±Ê¹Óã¨EBPÈëÕ»£©¡£
½«µ±Ç°Õ»Ö¡Çл»µ½ÐÂÕ»Ö¡£¨½«ESPÖµ×°ÈëEBP£¬¸üÐÂÕ»Ö¡µ×²¿£©¡£
¸øÐÂÕ»Ö¡·ÖÅä¿Õ¼ä£¨°ÑESP¼õÈ¥ËùÐè¿Õ¼äµÄ´óС£¬Ì§¸ßÕ»¶¥£©¡£
¶þ¡¢º¯Êýµ÷ÓÃÔ¼¶¨£º
µ÷ÓÃÔ¼¶¨µÄÉùÃ÷
²ÎÊýÈëջ˳Ðò
»Ö¸´Õ»Æ½ºâµÄλÖÃ
__cdecl
ÓÒ→×ó
ĸº¯Êý
__fastcall
ÓÒ→×ó
×Óº¯Êý
__stdcall
ÓÒ→×ó
×Óº¯Êý
Èý¡¢¾ßÌåµÄ±íÏÖ
£¨1£© __cdecl
º¯Êý±¾Éí²»ÇåÀí¶ÑÕ»£¬µ÷ÓÃÕ߸ºÔðÇåÀí¶ÑÕ»¡£ÓÉÓÚÕâÖֱ仯£¬Cµ÷ÓÃÔ¼¶¨ÔÊÐíº¯ÊýµÄ²ÎÊýµÄ¸öÊýÊDz»¹Ì¶¨µÄ
£¨2£© __fastcall
º¯ÊýµÄµÚÒ»¸öºÍµÚ¶þ¸öDWORD²ÎÊý£¨»òÕ߳ߴç¸üСµÄ£©Í¨¹ýecxºÍedx´«µÝ£¬ÆäËû²ÎÊýͨ¹ý´ÓÓÒÏò×óµÄ˳Ðòѹջ
±»µ÷Óú¯ÊýÇåÀí¶ÑÕ»
£¨3£© __stdcall
  ......
Ç°ÃæÒ»ÆªÎÒÃǽéÉÜÁ˽ṹÌ壬ÕâÆªÖÕÓÚÄܹ»½éÉܺ¯ÊýÁË¡£ÎªÊ²Ã´ÕâÃ´ËµÄØ£¿ÒòΪº¯Êý·Ç³£ÖØÒª¡£¾ÍÕâô¼òµ¥¡£ºÙºÙ£¡Ö®ËùÒÔÔÚÕâʱ²Å½²º¯Êý£¬ÊÇÒòΪ±¾Æª½«ÁªÏµµ½Ç°ÃæµÄÿһƪ£¬ÕâÑùº¯Êý²ÅÄÜÌåÏÖµÄ͸³¹¡£ÄÇÎÒÃÇ¾ÍÆÈ²»¼°´ýµÄÇÐÈëÕýÌâ¡£
´ÓµÚһƪHelloworld¿ªÊ¼µ½ÏÖÔÚ£¬¾ÍûÓÐÍÑÀ뺯Êý¡£ÄǾÍÊÇÎÒÃǵÄmainº¯Êý¡£mainº¯ÊýÒ²ÊÇÒ»¸öÆÕͨµÄº¯Êý£¬Ö»²»¹ýͨ³£°ÑËü×÷ΪÎÒÃÇдµÄ³ÌÐòµÄÈë¿Ú¡£Ò²¾ÍÊÇ˵ÎÒÃǾ͵±Ëü×îÏÈÖ´ÐС£ÄÇÕâÑùÒ»À´ÎªÊ²Ã´ËµËüÓÖÊÇÒ»¸öÆÕͨµÄº¯ÊýÄØ£¿ÔÒòÊÇÎÒÃÇ¿ÉÒÔͨ¹ýд´úÂë¸Ä±äÕâ¸öÈë¿Ú¡£ÈÃÎÒÃǵijÌÐòÒ»¿ªÊ¼²»Ö´ÐÐmainº¯Êý¶øÏÈÖ´ÐÐÎÒÃÇ×Ô¶¨ÒåµÄº¯Êý¡£¾ßÌåÔõôʵÏÖ²»ÊDZ¾ÆªµÄÄÚÈÝ£¬´ó¼ÒÖªµÀÓÐÕâô»ØÊ±ã¿É¡£¼ÇµÃmainº¯Êý²¢²»ÊÇÒ»¸öÌØÊâµÄº¯Êý£¬ËüÖ»ÊDZ»ÈÏΪµÄ¶¨Îª³ÌÐòµÄÈë¿Úº¯Êý¶øÒÑ¡£
ÄÇô£¬Ê²Ã´ÊǺ¯Êý£¿Í¨Ë×µÄÀí½â£¬Ëü¾ÍÊÇÒ»¶Î´úÂë¿é£¬±»ÎÒÃǽ«ÁãÉ¢µÄÓï¾ä¼¯ÖÐÔÚÒ»Æð¶øÓÃÓÚÖ§³Öij¸ö¹¦ÄÜ¡£±ÈÈçÎÒÃǵÄstrcpyÒ²ÊÇÒ»¸öº¯Êý£¬Õâ¸öº¯ÊýµÄ×÷ÓÃÊÇ×Ö·û´®¿½±´¡£ËüÀïÃæÓкܶàÓï¾ä¡£ÕâЩÓï¾ä±»ÓÃÒ»¸öº¯ÊýµÄÐÎʽ¼¯ÖÐÔÚÒ»Æð¶øÒÑ¡£Ëµµ½ÕâÀïÓÖ²»µÃ²»Ç¿µ÷Ò»µã£¬ÄǾÍÊÇÎÒÃÇÔÚ½Ó´¥Ò»¸öÐµĶ«Î÷µÄʱºò¾¡Á¿ÍùÆä±¾ÖÊÏ룬ÕâÑù±ã²»»á¸Ðµ½³éÏóºÍİÉú¡£¾Í±ÈÈ纯Êý£¬ÎÒÃǾÍÀí½âËü¾ÍÊÇÒ»¸ö´úÂë¿é¼¯ÖйÜÀíµÄ ......
Ç°ÃæÒ»ÆªÎÒÃǽéÉÜÁ˽ṹÌ壬ÕâÆªÖÕÓÚÄܹ»½éÉܺ¯ÊýÁË¡£ÎªÊ²Ã´ÕâÃ´ËµÄØ£¿ÒòΪº¯Êý·Ç³£ÖØÒª¡£¾ÍÕâô¼òµ¥¡£ºÙºÙ£¡Ö®ËùÒÔÔÚÕâʱ²Å½²º¯Êý£¬ÊÇÒòΪ±¾Æª½«ÁªÏµµ½Ç°ÃæµÄÿһƪ£¬ÕâÑùº¯Êý²ÅÄÜÌåÏÖµÄ͸³¹¡£ÄÇÎÒÃÇ¾ÍÆÈ²»¼°´ýµÄÇÐÈëÕýÌâ¡£
´ÓµÚһƪHelloworld¿ªÊ¼µ½ÏÖÔÚ£¬¾ÍûÓÐÍÑÀ뺯Êý¡£ÄǾÍÊÇÎÒÃǵÄmainº¯Êý¡£mainº¯ÊýÒ²ÊÇÒ»¸öÆÕͨµÄº¯Êý£¬Ö»²»¹ýͨ³£°ÑËü×÷ΪÎÒÃÇдµÄ³ÌÐòµÄÈë¿Ú¡£Ò²¾ÍÊÇ˵ÎÒÃǾ͵±Ëü×îÏÈÖ´ÐС£ÄÇÕâÑùÒ»À´ÎªÊ²Ã´ËµËüÓÖÊÇÒ»¸öÆÕͨµÄº¯ÊýÄØ£¿ÔÒòÊÇÎÒÃÇ¿ÉÒÔͨ¹ýд´úÂë¸Ä±äÕâ¸öÈë¿Ú¡£ÈÃÎÒÃǵijÌÐòÒ»¿ªÊ¼²»Ö´ÐÐmainº¯Êý¶øÏÈÖ´ÐÐÎÒÃÇ×Ô¶¨ÒåµÄº¯Êý¡£¾ßÌåÔõôʵÏÖ²»ÊDZ¾ÆªµÄÄÚÈÝ£¬´ó¼ÒÖªµÀÓÐÕâô»ØÊ±ã¿É¡£¼ÇµÃmainº¯Êý²¢²»ÊÇÒ»¸öÌØÊâµÄº¯Êý£¬ËüÖ»ÊDZ»ÈÏΪµÄ¶¨Îª³ÌÐòµÄÈë¿Úº¯Êý¶øÒÑ¡£
ÄÇô£¬Ê²Ã´ÊǺ¯Êý£¿Í¨Ë×µÄÀí½â£¬Ëü¾ÍÊÇÒ»¶Î´úÂë¿é£¬±»ÎÒÃǽ«ÁãÉ¢µÄÓï¾ä¼¯ÖÐÔÚÒ»Æð¶øÓÃÓÚÖ§³Öij¸ö¹¦ÄÜ¡£±ÈÈçÎÒÃǵÄstrcpyÒ²ÊÇÒ»¸öº¯Êý£¬Õâ¸öº¯ÊýµÄ×÷ÓÃÊÇ×Ö·û´®¿½±´¡£ËüÀïÃæÓкܶàÓï¾ä¡£ÕâЩÓï¾ä±»ÓÃÒ»¸öº¯ÊýµÄÐÎʽ¼¯ÖÐÔÚÒ»Æð¶øÒÑ¡£Ëµµ½ÕâÀïÓÖ²»µÃ²»Ç¿µ÷Ò»µã£¬ÄǾÍÊÇÎÒÃÇÔÚ½Ó´¥Ò»¸öÐµĶ«Î÷µÄʱºò¾¡Á¿ÍùÆä±¾ÖÊÏ룬ÕâÑù±ã²»»á¸Ðµ½³éÏóºÍİÉú¡£¾Í±ÈÈ纯Êý£¬ÎÒÃǾÍÀí½âËü¾ÍÊÇÒ»¸ö´úÂë¿é¼¯ÖйÜÀíµÄ ......
Ç°ÃæÁ½Æª»ù±¾°ÑÖ¸Õë¸ø½éÉÜÍêÁË£¬ÏàÐÅ´ó¼Ò¶ÔÖ¸ÕëÒѾ²»ÊÇÄÇôİÉúÁË¡£Ò²²»»áÒòΪָÕëºÍÊý×éÖ®¼äµÄ¹ØÏµ¶øµ¼Ö»ìÏýÁË¡£´ó¼Ò¿ÉÄÜÒ²ÆÈ²»¼°´ýÏëÁ˽âϺóÀ´µÄ֪ʶ¡£½ñÌìÎÒÃǾͽéÉÜϽṹÌå¡£
¶ÔÓڽṹÌ壬¼ÈÈ»½Ð½á¹¹Ì壬ÐÎÏóÉÏÎÒÃÇ¿ÉÒÔÀí½âÆä¾ÍÊÇÒ»¶ÑÊý¾Ý¼¯ºÏÔÚÒ»ÆðÐγÉÒ»¸ö½á¹¹¡£¾Í±ÈÈçÒ»¸öѧÉúµÄÐÅÏ¢°üÀ¨£ºÑ§ºÅ¡¢ÐÕÃû¡¢°à¼¶¡¢ÄêÁäµÈµÈ¡£ÕâЩÐÅÏ¢¶¼ÊÇÊôÓÚÕâ¸öѧÉúµÄ£¬Òò´ËÎÒÃǾͿÉÒÔ½«ÕâЩÐÅϢͳһ°ó¶¨ÔÚÒ»Æð¡£ÐγÉÒ»¸öѧÉúʵÌ壬ÕâÀïÓеãC++µÄζµÀ¡£ÎÒÃÇѧCÒ²»¹ÊÇÓбØÒªÕâÑù˼¿¼¡£ÔÚÎÒÃÇÖÜΧ¼¸ºõÿһÑù¶«Î÷¶¼ÓÐËü×Ô¼ºµÄÐÅÏ¢»òÕß×é³É¡£±ÈÈçÒ©Æ·£¬ËüÓÐʲô¹¦Ð§£¬ÓÐʲô³É·ÖµÈµÈ¶¼ÄÜͳһ°ó¶¨ÔÚÒ»ÆðÐγÉÒ»¸öʵÌ壬ÎÒÃÇÔÚ³ÌÐòÖоÍÄÜ·½±ãµÄ·ÃÎÊÕâЩʵÌåµÄÿһ¸öÐÅÏ¢»ò×é³É¡£Òò´Ë£¬µ±ÎÒÃÇÔÚÉè¼ÆÒ»¸ö³ÌÐòµÄʱºò£¬ÎÒÃǾÍÄܰÑһЩ¾ßÓй²Í¬ÌØÐÔ»òÕß×é³ÉÔªËØ¼¯ºÏµ½Ò»Æð¹¹³ÉÒ»¸ö½á¹¹Ìå¡£±ÈÈçÎÒÃǵÄѧÉú¾Í¿ÉÒÔд³É£º
struct SStudent
{
char name[ 13 ]; // ÐÕÃû
char className[ 16 ]; & ......
Ç°ÃæÁ½Æª»ù±¾°ÑÖ¸Õë¸ø½éÉÜÍêÁË£¬ÏàÐÅ´ó¼Ò¶ÔÖ¸ÕëÒѾ²»ÊÇÄÇôİÉúÁË¡£Ò²²»»áÒòΪָÕëºÍÊý×éÖ®¼äµÄ¹ØÏµ¶øµ¼Ö»ìÏýÁË¡£´ó¼Ò¿ÉÄÜÒ²ÆÈ²»¼°´ýÏëÁ˽âϺóÀ´µÄ֪ʶ¡£½ñÌìÎÒÃǾͽéÉÜϽṹÌå¡£
¶ÔÓڽṹÌ壬¼ÈÈ»½Ð½á¹¹Ì壬ÐÎÏóÉÏÎÒÃÇ¿ÉÒÔÀí½âÆä¾ÍÊÇÒ»¶ÑÊý¾Ý¼¯ºÏÔÚÒ»ÆðÐγÉÒ»¸ö½á¹¹¡£¾Í±ÈÈçÒ»¸öѧÉúµÄÐÅÏ¢°üÀ¨£ºÑ§ºÅ¡¢ÐÕÃû¡¢°à¼¶¡¢ÄêÁäµÈµÈ¡£ÕâЩÐÅÏ¢¶¼ÊÇÊôÓÚÕâ¸öѧÉúµÄ£¬Òò´ËÎÒÃǾͿÉÒÔ½«ÕâЩÐÅϢͳһ°ó¶¨ÔÚÒ»Æð¡£ÐγÉÒ»¸öѧÉúʵÌ壬ÕâÀïÓеãC++µÄζµÀ¡£ÎÒÃÇѧCÒ²»¹ÊÇÓбØÒªÕâÑù˼¿¼¡£ÔÚÎÒÃÇÖÜΧ¼¸ºõÿһÑù¶«Î÷¶¼ÓÐËü×Ô¼ºµÄÐÅÏ¢»òÕß×é³É¡£±ÈÈçÒ©Æ·£¬ËüÓÐʲô¹¦Ð§£¬ÓÐʲô³É·ÖµÈµÈ¶¼ÄÜͳһ°ó¶¨ÔÚÒ»ÆðÐγÉÒ»¸öʵÌ壬ÎÒÃÇÔÚ³ÌÐòÖоÍÄÜ·½±ãµÄ·ÃÎÊÕâЩʵÌåµÄÿһ¸öÐÅÏ¢»ò×é³É¡£Òò´Ë£¬µ±ÎÒÃÇÔÚÉè¼ÆÒ»¸ö³ÌÐòµÄʱºò£¬ÎÒÃǾÍÄܰÑһЩ¾ßÓй²Í¬ÌØÐÔ»òÕß×é³ÉÔªËØ¼¯ºÏµ½Ò»Æð¹¹³ÉÒ»¸ö½á¹¹Ìå¡£±ÈÈçÎÒÃǵÄѧÉú¾Í¿ÉÒÔд³É£º
struct SStudent
{
char name[ 13 ]; // ÐÕÃû
char className[ 16 ]; & ......
·½·¨Ò»£ºÊ¹ÓÃÁíÒ»¸öʵÏÖÀà·Ö×°ÀàµÄ˽ÓгÉÔ±ºÍº¯Êý£¬ÕâÖÖ·½·¨³ÆÎªPimpl·½·¨¡£
test.h
#pragma once
#include "shared_ptr.hpp"
class CTest
{
public:
CTest(void);
~CTest(void);
void DoSomething();
private:
class CTestImp;
boost::shared_ptr<CTestImp> pimpl_;
};
test.cpp
#include "Test.h"
#include <iostream>
class CTest::CTestImp
{
private:
CTestImp(CTestImp const &){}
CTestImp & operator=(CTestImp const &){}
public:
CTestImp(){}
void DoSomething();
};
void CTest::CTestImp::DoSomething()
{
// do something.
std::cout<<"Imp class do something."<<std::endl;
}
CTest::C ......
·½·¨Ò»£ºÊ¹ÓÃÁíÒ»¸öʵÏÖÀà·Ö×°ÀàµÄ˽ÓгÉÔ±ºÍº¯Êý£¬ÕâÖÖ·½·¨³ÆÎªPimpl·½·¨¡£
test.h
#pragma once
#include "shared_ptr.hpp"
class CTest
{
public:
CTest(void);
~CTest(void);
void DoSomething();
private:
class CTestImp;
boost::shared_ptr<CTestImp> pimpl_;
};
test.cpp
#include "Test.h"
#include <iostream>
class CTest::CTestImp
{
private:
CTestImp(CTestImp const &){}
CTestImp & operator=(CTestImp const &){}
public:
CTestImp(){}
void DoSomething();
};
void CTest::CTestImp::DoSomething()
{
// do something.
std::cout<<"Imp class do something."<<std::endl;
}
CTest::C ......
Ç°ÃæÁ½Æª»ù±¾°ÑÖ¸Õë¸ø½éÉÜÍêÁË£¬ÏàÐÅ´ó¼Ò¶ÔÖ¸ÕëÒѾ²»ÊÇÄÇôİÉúÁË¡£Ò²²»»áÒòΪָÕëºÍÊý×éÖ®¼äµÄ¹ØÏµ¶øµ¼Ö»ìÏýÁË¡£´ó¼Ò¿ÉÄÜÒ²ÆÈ²»¼°´ýÏëÁ˽âϺóÀ´µÄ֪ʶ¡£½ñÌìÎÒÃǾͽéÉÜϽṹÌå¡£
¶ÔÓڽṹÌ壬¼ÈÈ»½Ð½á¹¹Ì壬ÐÎÏóÉÏÎÒÃÇ¿ÉÒÔÀí½âÆä¾ÍÊÇÒ»¶ÑÊý¾Ý¼¯ºÏÔÚÒ»ÆðÐγÉÒ»¸ö½á¹¹¡£¾Í±ÈÈçÒ»¸öѧÉúµÄÐÅÏ¢°üÀ¨£ºÑ§ºÅ¡¢ÐÕÃû¡¢°à¼¶¡¢ÄêÁäµÈµÈ¡£ÕâЩÐÅÏ¢¶¼ÊÇÊôÓÚÕâ¸öѧÉúµÄ£¬Òò´ËÎÒÃǾͿÉÒÔ½«ÕâЩÐÅϢͳһ°ó¶¨ÔÚÒ»Æð¡£ÐγÉÒ»¸öѧÉúʵÌ壬ÕâÀïÓеãC++µÄζµÀ¡£ÎÒÃÇѧCÒ²»¹ÊÇÓбØÒªÕâÑù˼¿¼¡£ÔÚÎÒÃÇÖÜΧ¼¸ºõÿһÑù¶«Î÷¶¼ÓÐËü×Ô¼ºµÄÐÅÏ¢»òÕß×é³É¡£±ÈÈçÒ©Æ·£¬ËüÓÐʲô¹¦Ð§£¬ÓÐʲô³É·ÖµÈµÈ¶¼ÄÜͳһ°ó¶¨ÔÚÒ»ÆðÐγÉÒ»¸öʵÌ壬ÎÒÃÇÔÚ³ÌÐòÖоÍÄÜ·½±ãµÄ·ÃÎÊÕâЩʵÌåµÄÿһ¸öÐÅÏ¢»ò×é³É¡£Òò´Ë£¬µ±ÎÒÃÇÔÚÉè¼ÆÒ»¸ö³ÌÐòµÄʱºò£¬ÎÒÃǾÍÄܰÑһЩ¾ßÓй²Í¬ÌØÐÔ»òÕß×é³ÉÔªËØ¼¯ºÏµ½Ò»Æð¹¹³ÉÒ»¸ö½á¹¹Ìå¡£±ÈÈçÎÒÃǵÄѧÉú¾Í¿ÉÒÔд³É£º
struct SStudent
{
char name[ 13 ]; // ÐÕÃû
char className[ 16 ]; & ......
Ç°ÃæÁ½Æª»ù±¾°ÑÖ¸Õë¸ø½éÉÜÍêÁË£¬ÏàÐÅ´ó¼Ò¶ÔÖ¸ÕëÒѾ²»ÊÇÄÇôİÉúÁË¡£Ò²²»»áÒòΪָÕëºÍÊý×éÖ®¼äµÄ¹ØÏµ¶øµ¼Ö»ìÏýÁË¡£´ó¼Ò¿ÉÄÜÒ²ÆÈ²»¼°´ýÏëÁ˽âϺóÀ´µÄ֪ʶ¡£½ñÌìÎÒÃǾͽéÉÜϽṹÌå¡£
¶ÔÓڽṹÌ壬¼ÈÈ»½Ð½á¹¹Ì壬ÐÎÏóÉÏÎÒÃÇ¿ÉÒÔÀí½âÆä¾ÍÊÇÒ»¶ÑÊý¾Ý¼¯ºÏÔÚÒ»ÆðÐγÉÒ»¸ö½á¹¹¡£¾Í±ÈÈçÒ»¸öѧÉúµÄÐÅÏ¢°üÀ¨£ºÑ§ºÅ¡¢ÐÕÃû¡¢°à¼¶¡¢ÄêÁäµÈµÈ¡£ÕâЩÐÅÏ¢¶¼ÊÇÊôÓÚÕâ¸öѧÉúµÄ£¬Òò´ËÎÒÃǾͿÉÒÔ½«ÕâЩÐÅϢͳһ°ó¶¨ÔÚÒ»Æð¡£ÐγÉÒ»¸öѧÉúʵÌ壬ÕâÀïÓеãC++µÄζµÀ¡£ÎÒÃÇѧCÒ²»¹ÊÇÓбØÒªÕâÑù˼¿¼¡£ÔÚÎÒÃÇÖÜΧ¼¸ºõÿһÑù¶«Î÷¶¼ÓÐËü×Ô¼ºµÄÐÅÏ¢»òÕß×é³É¡£±ÈÈçÒ©Æ·£¬ËüÓÐʲô¹¦Ð§£¬ÓÐʲô³É·ÖµÈµÈ¶¼ÄÜͳһ°ó¶¨ÔÚÒ»ÆðÐγÉÒ»¸öʵÌ壬ÎÒÃÇÔÚ³ÌÐòÖоÍÄÜ·½±ãµÄ·ÃÎÊÕâЩʵÌåµÄÿһ¸öÐÅÏ¢»ò×é³É¡£Òò´Ë£¬µ±ÎÒÃÇÔÚÉè¼ÆÒ»¸ö³ÌÐòµÄʱºò£¬ÎÒÃǾÍÄܰÑһЩ¾ßÓй²Í¬ÌØÐÔ»òÕß×é³ÉÔªËØ¼¯ºÏµ½Ò»Æð¹¹³ÉÒ»¸ö½á¹¹Ìå¡£±ÈÈçÎÒÃǵÄѧÉú¾Í¿ÉÒÔд³É£º
struct SStudent
{
char name[ 13 ]; // ÐÕÃû
char className[ 16 ]; & ......