{"rsdb":{"rid":"158457","subhead":"","postdate":"0","aid":"118825","fid":"49","uid":"1","topic":"1","content":"
\n

\u865a\u51fd\u6570\u548c\u7eaf\u865a\u51fd\u6570\u53ef\u4ee5\u5b9a\u4e49\u5728\u540c\u4e00\u4e2a\u7c7b(class)\u4e2d\uff0c\u542b\u6709\u7eaf\u865a\u51fd\u6570\u7684\u7c7b\u88ab\u79f0\u4e3a\u62bd\u8c61\u7c7b(abstract class)\uff0c\u800c\u53ea\u542b\u6709\u865a\u51fd\u6570\u7684\u7c7b(class)\u4e0d\u80fd\u88ab\u79f0\u4e3a\u62bd\u8c61\u7c7b(abstract class)\u3002<\/p> \n

\u865a\u51fd\u6570\u53ef\u4ee5\u88ab\u76f4\u63a5\u4f7f\u7528\uff0c\u4e5f\u53ef\u4ee5\u88ab\u5b50\u7c7b(sub class)\u91cd\u8f7d\u4ee5\u540e\u4ee5\u591a\u6001\u7684\u5f62\u5f0f\u8c03\u7528\uff0c\u800c\u7eaf\u865a\u51fd\u6570\u5fc5\u987b\u5728\u5b50\u7c7b(sub class)\u4e2d\u5b9e\u73b0\u8be5\u51fd\u6570\u624d\u53ef\u4ee5\u4f7f\u7528\uff0c\u56e0\u4e3a\u7eaf\u865a\u51fd\u6570\u5728\u57fa\u7c7b(base class)\u53ea\u6709\u58f0\u660e\u800c\u6ca1\u6709\u5b9a\u4e49\u3002<\/p> \n

\u865a\u51fd\u6570\u548c\u7eaf\u865a\u51fd\u6570\u90fd\u53ef\u4ee5\u5728\u5b50\u7c7b(sub class)\u4e2d\u88ab\u91cd\u8f7d\uff0c\u4ee5\u591a\u6001\u7684\u5f62\u5f0f\u88ab\u8c03\u7528\u3002<\/p> \n

\u865a\u51fd\u6570\u548c\u7eaf\u865a\u51fd\u6570\u901a\u5e38\u5b58\u5728\u4e8e\u62bd\u8c61\u57fa\u7c7b(abstract base class -ABC)\u4e4b\u4e2d\uff0c\u88ab\u7ee7\u627f\u7684\u5b50\u7c7b\u91cd\u8f7d\uff0c\u76ee\u7684\u662f\u63d0\u4f9b\u4e00\u4e2a\u7edf\u4e00\u7684\u63a5\u53e3\u3002<\/p> \n

\u865a\u51fd\u6570\u7684\u5b9a\u4e49\u5f62\u5f0f\uff1avirtual {method body}<\/p> \n

\u7eaf\u865a\u51fd\u6570\u7684\u5b9a\u4e49\u5f62\u5f0f\uff1avirtual { } = 0;<\/p> \n

\u5728\u865a\u51fd\u6570\u548c\u7eaf\u865a\u51fd\u6570\u7684\u5b9a\u4e49\u4e2d\u4e0d\u80fd\u6709static\u6807\u8bc6\u7b26\uff0c\u539f\u56e0\u5f88\u7b80\u5355\uff0c\u88abstatic\u4fee\u9970\u7684\u51fd\u6570\u5728\u7f16\u8bd1\u65f6\u5019\u8981\u6c42\u524d\u671fbind,\u7136\u800c\u865a\u51fd\u6570\u5374\u662f\u52a8\u6001\u7ed1\u5b9a(run-time bind)\uff0c\u800c\u4e14\u88ab\u4e24\u8005\u4fee\u9970\u7684\u51fd\u6570\u751f\u547d\u5468\u671f(life recycle)\u4e5f\u4e0d\u4e00\u6837\u3002<\/p> \n

\u865a\u51fd\u6570\u5fc5\u987b\u5b9e\u73b0\uff0c\u5982\u679c\u4e0d\u5b9e\u73b0\uff0c\u7f16\u8bd1\u5668\u5c06\u62a5\u9519\uff0c\u9519\u8bef\u63d0\u793a\u4e3a\uff1a<\/p> \n

error LNK****: unresolved external symbol \u201cpublic: virtual void __thiscall<\/p> \n

ClassName::virtualFunctionName(void)\u201d<\/p> \n

\u5bf9\u4e8e\u865a\u51fd\u6570\u6765\u8bf4\uff0c\u7236\u7c7b\u548c\u5b50\u7c7b\u90fd\u6709\u5404\u81ea\u7684\u7248\u672c\u3002\u7531\u591a\u6001\u65b9\u5f0f\u8c03\u7528\u7684\u65f6\u5019\u52a8\u6001\u7ed1\u5b9a\u3002<\/p> \n

\u5b9e\u73b0\u4e86\u7eaf\u865a\u51fd\u6570\u7684\u5b50\u7c7b\uff0c\u8be5\u7eaf\u865a\u51fd\u6570\u5728\u5b50\u7c7b\u4e2d\u5c31\u7f16\u7a0b<\/a>\u4e86\u865a\u51fd\u6570\uff0c\u5b50\u7c7b\u7684\u5b50\u7c7b\u5373\u5b59\u5b50\u7c7b\u53ef\u4ee5\u8986\u76d6<\/p> \n

\u8be5\u865a\u51fd\u6570\uff0c\u7531\u591a\u6001\u65b9\u5f0f\u8c03\u7528\u7684\u65f6\u5019\u52a8\u6001\u7ed1\u5b9a\u3002<\/p> \n

\u865a\u51fd\u6570\u662fC++<\/a>\u4e2d\u7528\u4e8e\u5b9e\u73b0\u591a\u6001(polymorphism)\u7684\u673a\u5236\u3002\u6838\u5fc3\u7406\u5ff5\u5c31\u662f\u901a\u8fc7\u57fa\u7c7b\u8bbf\u95ee\u6d3e\u751f\u7c7b\u5b9a\u4e49\u7684<\/p> \n

\u51fd\u6570<\/p> \n

\u591a\u6001\u6027\u6307\u76f8\u540c\u5bf9\u8c61\u6536\u5230\u4e0d\u540c\u6d88\u606f\u6216\u4e0d\u540c\u5bf9\u8c61\u6536\u5230\u76f8\u540c\u6d88\u606f\u65f6\u4ea7\u751f\u4e0d\u540c\u7684\u5b9e\u73b0\u52a8\u4f5c\u3002C++<\/a>\u652f\u6301\u4e24\u79cd\u591a\u6001\u6027\uff1a\u7f16\u8bd1\u65f6\u591a\u6001\u6027\uff0c\u8fd0\u884c\u65f6\u591a\u6001\u6027\u3002<\/p> \n

a.\u7f16\u8bd1\u65f6\u591a\u6001\u6027\uff1a\u901a\u8fc7\u91cd\u8f7d\u51fd\u6570\u5b9e\u73b0<\/p> \n

b \u8fd0\u884c\u65f6\u591a\u6001\u6027\uff1a\u901a\u8fc7\u865a\u51fd\u6570\u5b9e\u73b0\u3002<\/p> \n

\u5982\u679c\u4e00\u4e2a\u7c7b\u4e2d\u542b\u6709\u7eaf\u865a\u51fd\u6570\uff0c\u90a3\u4e48\u4efb\u4f55\u8bd5\u56fe\u5bf9\u8be5\u7c7b\u8fdb\u884c\u5b9e\u4f8b\u5316\u7684\u8bed\u53e5\u90fd\u5c06\u5bfc\u81f4\u9519\u8bef\u7684\u4ea7\u751f\uff0c\u56e0\u4e3a\u62bd\u8c61\u57fa\u7c7b(ABC)\u662f\u4e0d\u80fd\u88ab\u76f4\u63a5\u8c03\u7528\u7684\u3002\u5fc5\u987b\u88ab\u5b50\u7c7b\u7ee7\u627f\u91cd\u8f7d\u4ee5\u540e\uff0c\u6839\u636e\u8981\u6c42\u8c03\u7528\u5176\u5b50\u7c7b\u7684\u65b9\u6cd5\u3002<\/p> \n

\r\n\/\/father class\r\n\r\n\u3000\u3000class Virtualbase\r\n\r\n\u3000\u3000{\r\n\r\n\u3000\u3000public:\r\n\r\n\u3000\u3000virtual void Demon()= 0; \/\/prue virtual function\r\n\r\n\u3000\u3000virtual void Base() {cout<<"this is farther class"<};\r\n\r\n\u3000\u3000}\r\n\r\n\u3000\u3000\/\/sub class\r\n\r\n\u3000\u3000class SubVirtual :public Virtualbase\r\n\r\n\u3000\u3000{\r\n\r\n\u3000\u3000public:\r\n\r\n\u3000\u3000void Demon() { cout<<" this is SubVirtual!"< \r\n\r\n\u3000\u3000void Base() { cout<<"this is subclass Base"< \r\n\r\n\u3000\u3000}\r\n\r\n\u3000\u3000\/*\r\n\r\n\u3000\u3000instance class and sample\r\n\r\n\u3000\u3000*\/\r\n\r\n\u3000\u3000void main()\r\n\r\n\u3000\u3000{\r\n\r\n\u3000\u3000Virtualbase* inst = new SubVirtual(); \/\/multstate pointer\r\n\r\n\u3000\u3000inst->Demon();\r\n\r\n\u3000\u3000inst->Base();\r\n\r\n\u3000\u3000\/\/ inst = new Virtualbase();\r\n\r\n\u3000\u3000\/\/ inst->Base()\r\n\r\n\u3000\u3000return ;\r\n\r\n}<\/pre> \n<\/div>","orderid":"0","title":"C++\u4e2d\u865a\u51fd\u6570\u4e0e\u7eaf\u865a\u51fd\u6570\u7684\u533a\u522b","smalltitle":"","mid":"0","fname":"c++\u7f16\u7a0b\u57fa\u7840","special_id":"0","bak_id":"0","info":"0","hits":"4955","pages":"1","comments":"0","posttime":"2017-09-19 13:06:19","list":"1505797579","username":"admin","author":"","copyfrom":"","copyfromurl":"","titlecolor":"","fonttype":"0","titleicon":"0","picurl":"https:\/\/www.cppentry.com\/upload_files\/","ispic":"0","yz":"1","yzer":"","yztime":"0","levels":"0","levelstime":"0","keywords":"\u51fd\u6570<\/A> \u533a\u522b<\/A>","jumpurl":"","iframeurl":"","style":"","template":"a:3:{s:4:\"head\";s:0:\"\";s:4:\"foot\";s:0:\"\";s:8:\"bencandy\";s:0:\"\";}","target":"0","ip":"113.108.110.181","lastfid":"0","money":"0","buyuser":"","passwd":"","allowdown":"","allowview":"","editer":"","edittime":"0","begintime":"0","endtime":"0","description":"C++\u4e2d\u865a\u51fd\u6570\u4e0e\u7eaf\u865a\u51fd\u6570\u7684\u533a\u522b","lastview":"1713511722","digg_num":"1079","digg_time":"0","forbidcomment":"0","ifvote":"0","heart":"","htmlname":"","city_id":"0"},"page":"1"}