¡¾C/C++¡¿C++ÐéÎö¹¹º¯ÊýµÄ×÷ÓÃ
1¡¢×÷ÓÃ
ΪÁËÔÚʵÏÖ¶à̬µÄʱºò²»Ôì³ÉÄÚ´æÐ¹Â¶,
Èç¹û»ùÀàÎö¹¹º¯Êýǰ²»¼Óvitual£¬ÅÉÉúÀà¶ÔÏó±»Ïú»Ùºó£¬Ö»»áµ÷ÓûùÀàµÄÎö¹¹º¯Êý£¬¶ø²»»áÈ¥µ÷ÓÃÅÉÉúÀàµÄÎö¹¹º¯Êý¡£
2¡¢¶ÔÓÚÕý³£µÄº¯Êý£¬Èç¹û»ùÀàÖÐÉùÃ÷Ϊvirtual£¬ÔòÅÉÉúÀà¿ÉÒÔ²»ÓÃÔÙдvirtual
// CPPTest.cpp : Defines the entry point for the console application.
//
#include "stdafx.h"
class Base
{
public:
Base(){}
virtual ~Base()
{
printf("Base Destructor!\n");
}
virtual void Func()
{
printf("Base Func!\n");
}
private:
int m_iData;
};
class Derived : public Base
{
public:
Derived(){}
~Derived()
{
printf("Derived Destructor!\n");
}
void Func()
{
printf("Derived Func!\n");
}
};
class Derived2 : public Derived
{
public:
Derived2(){}
~Derived2()
{
printf("Derived2 Destructor!\n");
}
void Func()
{
printf("Derived2 Func!\n");
}
};
int main(int argc, char* argv[])
{
Base *pb = new Base;
pb->Func();
Base *pd = new Derived;
pd->Func();
Base *pd2 = new Derived2;
pd2->Func();
delete pb;
delete pd;
delete pd2;
return 0;
}
½á¹û£º
Base Func!
Derived Func!
Derived2 Func!
Base Destructor!
Derived Destructor!
Base Destructor!
Derived2 Destructor!
Derived Destructor!
Base Destructor!
Ïà¹ØÎĵµ£º
ÏÈ·¢±íÒ»ÏÂÓÞ¼û£¬»¶Ó´ó»ï¶ùÅÄש£º
Visual C++£ºWindowsƽ̨ÉÏ×îÁ÷ÐеıàÒëÆ÷£¬ºÍVS¼¯³ÉµÄºÜºÃ£¬±àÒëЧÂʺͱàÒëºóµÄ´úÂëЧÂʶ¼²»´í£¬µ«ÊÇ£¬³ýÁ˱ȽϺÃÓÃÖ®Í⣬ºÃÏóûÓÐÌØ±ðÍ»³öµÄ...¶øÇÒ£¬Ö§³ÖµÄÓ²¼þƽ̨ºÃÏóÖ»ÓÐX86µÄ...
GCC/G++£º¿ªÔ´µÄ£¬Linux/Unixƽ̨ÉϵÄÊ×Ñ¡£¬¶øÇÒÖ§³ÖNÖÐÓ²¼þƽ̨£¬Èç¹ûÏë½øÐÐ¿çÆ½Ì¨±àÒëµÄ»°£¬Õâ ......
¹¤×÷ºóÎÒ×ÐϸÔĶÁÁ˹«Ë¾µÄ3DÒýÇæµÄÔ´´úÂ룬ÕâÊÇ¿îά»¤ÁËÊ®¼¸ÄêµÄÒýÇæ£¬Ö÷ÒªÔËÐÐÔÚXBox, PS3ºÍPCƽ̨ÉÏ¡£ºËÐIJ¿·ÖÓÃCÓïÑÔд£¬ÆäËû²¿·Ö×é¼þÓÃC++±àд¡£ÎÒÒÔǰºÜÉÙÓÃCÓïÑÔ±à³Ì(°Ý´óѧ½ÌÓýËù´Í)£¬µ«¶ÁÁËÌ«¶àÕâ¿îÒýÇæµÄ´úÂëÉîÉîµÄÖÐÁËCÓïÑԵ;¡£C¸øÎҵĸоõ¾ÍÊǼòµ¥Ã÷ÁË£¬Òª½â¾öÎÊÌâ¾ÍÊÇÖ±½ÓÈ¥½â¾öËü£¬¾ø²»¹ ......
Ô¤´¦Àí¹ý³ÌɨÃèÔ´´úÂ룬¶ÔÆä½øÐгõ²½µÄת»»£¬²úÉúеÄÔ´´úÂëÌṩ¸ø±àÒëÆ÷¡£¿É¼ûÔ¤´¦Àí¹ý³ÌÏÈÓÚ±àÒëÆ÷¶ÔÔ´´úÂë½øÐд¦Àí¡£
ÔÚCÓïÑÔÖУ¬²¢Ã»ÓÐÈκÎÄÚÔڵĻúÖÆÀ´Íê³ÉÈçÏÂһЩ¹¦ÄÜ£ºÔÚ±àÒëʱ°üº¬ÆäËûÔ´Îļþ¡¢¶¨Òåºê¡¢¸ù¾ÝÌõ¼þ¾ö¶¨±àÒëʱÊÇ·ñ°üº¬Ä³Ð©´úÂë¡£ÒªÍê³ÉÕâЩ¹¤×÷£¬¾ÍÐèҪʹÓÃÔ¤´¦Àí³ÌÐò¡£¾¡¹ÜÔÚĿǰ¾ø´ó¶àÊý±àÒëÆ÷¶¼°üº ......
¡¡Ëã·¨£¨Algorithm£©£º¼ÆËã»ú½âÌâµÄ»ù±¾Ë¼Ïë·½·¨ºÍ²½Öè¡£Ëã·¨µÄÃèÊö£ºÊǶÔÒª½â¾öÒ»¸öÎÊÌâ»òÒªÍê³ÉÒ»ÏîÈÎÎñËù²ÉÈ¡µÄ·½·¨ºÍ²½ÖèµÄÃèÊö£¬°üÀ¨ÐèҪʲôÊý¾Ý£¨ÊäÈëʲôÊý¾Ý¡¢Êä³öʲô½á¹û£©¡¢²ÉÓÃʲô½á¹¹¡¢Ê¹ÓÃʲôÓï¾äÒÔ¼°ÈçºÎ°²ÅÅÕâЩÓï¾äµÈ¡£Í¨³£Ê¹ÓÃ×ÔÈ»ÓïÑÔ¡¢½á¹¹»¯Á÷³Ìͼ¡¢Î±´úÂëµÈÀ´ÃèÊöËã·¨¡£
¡¡¡¡Ò»¡¢¼ÆÊý¡¢ÇóºÍ¡¢Çó½ ......