Ò׽ؽØͼÈí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö160KB

C/C++ Ö¸Ïò×ÓÀà¶ÔÏóµÄ»ùÀàÖ¸Õë

ÓÐÈçϳÌÐò£º
//-----------------
class A
{
public:
A()
{
printf( "base A\r\n" );
}
virtual ~A()
{
printf( "base ~A\r\n" );
}
public:
virtual void VirtualFunc()
{
printf( "base VirtualFunc\r\n" );
};
void Func()
{
printf( "base Func\r\n" );
}
void F1()
{
printf( "base F1\r\n" );
}
protected:
private:
};
class B : public A
{
public:
B()
{
printf( "derive B\r\n" );
}
~B()
{
printf( "derive ~B\r\n" );
}
public:
virtual void VirtualFunc()
{
printf( "derive VirtualFunc\r\n" );
};
void Func()
{
printf( "derive Func\r\n" );
}
void G1()
{
printf( "derive G1\r\n" );
}
protected:
private:
};
ÔÚÕâÁ½¸öÀàÖУ¬×ÓÀàB ÖØдÁË »ùÀàµÄ Á½¸öº¯Êý£¬Ò»¸öÊÇÐ麯Êý£¬Ò»¸ö²»ÊÇÐ麯Êý¡£
1. Èç¹ûmainº¯ÊýÈçÏ£º
int main(int argc, int* argv[])
{
A* pA = new B;  //»ùÀàÖ¸ÕëÖ¸Ïò×ÓÀà¶ÔÏó
pA->VirtualFunc();
pA->Func();
//pA->G1(); //³ö´í£º'G1' : is not a member of 'A'
delete( pA );
system("pause");
return 0;
}
ÔËÐнá¹ûÈçÏ£º
base A
derive B
derive VirtualFunc
base Func
derive ~B
base ~A
Ò²¾ÍÊÇ˵£¬Èç¹û×ÓÀàÖØдÁË»ùÀàµÄÐ麯Êý£¬ÄÇô¸ÃÖ¸Õ루»ùÀàÖ¸Õ룬µ«Ö¸ÏòÅÉÉúÀà¶ÔÏ󣩽«µ÷ÓÃ×ÓÀàµÄº¯Êý£»
¼´Ê¹×ÓÀàÖØдÁË×ÓÀàµÄ·ÇÐ麯Êý£¬¸ÃÖ¸ÕëÒ²²»»áµ÷ÓÃ×ÓÀàµÄº¯Êý¡£
2.
Èç¹ûmain º¯ÊýÈçÏ£º
int main(int argc, int* argv[])
{
B *pB = new B; //×ÓÀàÖ¸ÕëÖ¸Ïò×ÓÀà¶ÔÏó
pB->VirtualFunc();
pB->Func();
//pB->F1(); //ÕýÈ·£¬Êä³ö£ºbase F1¡£Çë×¢Ò⣺BÀàÊǹ«Óм̳ÐAÀà¡£¾ßÌå²Î¼û£ºC++µÄÈýÖּ̳з½Ê½
delete( pB );
system("pause");
return 0;
}
ÔòÔËÐнá¹ûÈçÏ£º
base A
derive B
derive VirtualFunc
derive Func
derive ~B
base ~A
¼´Èç¹ûÓÃ×ÓÀàÖ¸ÕëÖ¸Ïò×ÓÀà¶ÔÏó£¬Ôò¶¼µ÷ÓÃ×ÓÀàµÄº¯Êý¡£


Ïà¹ØÎĵµ£º

̽Ë÷C++µÄÃØÃÜÖ®Ïê½âextern C

ʱ³£ÔÚcppµÄ´úÂëÖ®Öп´µ½ÕâÑùµÄ´úÂë: PnQ
PnQ
#ifdef __cplusplus PnQ
extern "C" { PnQ
#endif PnQ
PnQ
//Ò»¶Î´úÂë PnQ
PnQ
#ifdef __cplusplus PnQ
} PnQ
#endif PnQ
¡¡¡¡ÕâÑùµÄ´úÂëµ½µ×ÊÇʲôÒâ˼ÄØ£¿Ê×ÏÈ£¬__cplusplusÊÇcppÖеÄ×Ô¶¨Òåºê£¬ÄÇô¶¨ÒåÁËÕâ¸öºêµÄ»°±íʾÕâÊÇÒ»¶ÎcppµÄ´úÂ룬Ҳ¾ÍÊÇ˵£¬ÉÏÃæµÄ´úÂëµ ......

Visual Studio 2008 ÏÂÉú³ÉC/C++ »ã±à´úÂë

ÔÚÏîÄ¿ÊôÐÔÒ³ --> ÅäÖÃÊôÐÔ --> C/C++ --> Êä³öÎļþÀïÃ棬½«»ã±àÊä³öµÄÏÂÀ­Áбí´ÓÎÞÁбíÑ¡ÔñΪÄãÐèÒª»ã±àÊä³öµÄÄÚÈÝ£¬±ÈÈ瓽öÁгö³ÌÐò¼¯(/FA)”£¬Èçͼ1-1£¬Í¼1-2£º
 
ͼ1-1
 
ͼ1-2
------------------------------------------------------------------------------------------------ ......

CºÍC++±à³ÌºÍѧϰÎĵµ

 CºÍC++±à³ÌºÍѧϰÎĵµ
1  :Ö¸Õë±äÁ¿Ãû³ÆÒÔpΪÊ××Ö·û£¬ÕâÊdzÌÐòԱͨ³£ÔÚ¶¨ÒåÖ¸ÕëʱµÄÒ»¸öÏ°¹ß
2  :har * p;    (int *)p °ÑpÇ¿ÖÆת»»ÎªintÐÍ                        ......

¹ØÓÚdelete C/C++ Ö¸Õë

Õ»£ºº¯Êýµ÷ÓõÄʱºò£¬ÔÚÕ»Öб£´æ¾Ö²¿±äÁ¿ºÍº¯Êý²ÎÊýµÈ¡£µ±º¯Êý·µ»Øʱ£¬×Ô¶¯Çå³ýÕ»¡£
×ÔÓÉ´æ´¢Çø£ºÒ²³ÆΪ¶Ñ(heap)£¬¿ÉÒÔ¿´×÷´óÁ¿µÄÄÚ´æ¶Î¡£Í¨¹ý new ²Ù×÷·û·ÖÅäµÄÄÚ´æÔÚ¶ÑÖС£³ÌÐò½áÊø֮ǰ²»×Ô¶¯Çå³ý×ÔÓÉ´æ´¢Çø¡£ÐèÒªÓɳÌÐòÀ´¸ºÔðÊÍ·Å£¨delete£©¡£
1.
¶ÔÖ¸ÏòÕ»ÉÏÄÚ´æµÄÖ¸Õëµ÷ÓÃdelete»áµ¼Ö³ÌÐòCrash¡£
2. 
new ½ø ......

WindowsÏÂCÍøÂç±à³ÌÈëÃÅ

http://blog.csdn.net/Ackarlix/archive/2007/08/25/1758412.aspx
WindowsÏÂCÍøÂç±à³ÌÈëÃÅ
CÓïÑÔµÄѧϰ£¬Ò»°ãµÄ·½Ê½ÊÇ£¬ÏÈѧC£¬È»ºóÊÇC++£¬×îºÃ»¹ÒªÓлã±àÓïÑÔºÍ΢»úÔ­Àí»ù´¡£¬È»ºó²ÅÊÇVisual C++¡£ÕâÑùµÄ·½Ê½£¬¶ÔѧϰÕßÀ´Ëµ£¬Òª»¨·ÑºÜ¶àʱ¼äºÍÄÍÁ¦¡£¶øÔÚѧУ½ÌѧÖУ¬Ò²Ã»ÓÐʱ¼äÉîÈëѧϰWindows±à³ÌµÄʵÓü¼ÊõÁË¡£
¡¡¡¡ ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØͼ | ¸ÓICP±¸09004571ºÅ