{"id":339,"date":"2015-06-24T21:45:44","date_gmt":"2015-06-24T13:45:44","guid":{"rendered":"https:\/\/www.csbios.net\/blog\/?p=339"},"modified":"2015-06-24T21:57:10","modified_gmt":"2015-06-24T13:57:10","slug":"%e6%9c%80%e6%9c%80%e7%ae%80%e5%8d%95%e7%9a%84%e8%a3%85%e9%a5%b0%e5%99%a8%e6%a8%a1%e5%bc%8f","status":"publish","type":"post","link":"https:\/\/www.pufengdu.org\/blog\/?p=339","title":{"rendered":"\u6700\u6700\u7b80\u5355\u7684\u88c5\u9970\u5668\u6a21\u5f0f"},"content":{"rendered":"<p>\u8fd9\u91cc\u8981\u8bf4\u7684\u662f\u8fd9\u4e2a\u53eb\u505a\u201c\u88c5\u9970\u5668\u201d\u7684\u8bbe\u8ba1\u6a21\u5f0f\u7684\u6700\u6700\u7b80\u5355\u7684C++\u5b9e\u73b0\u3002<\/p>\n<p>\u88c5\u9970\u5668\u6a21\u5f0f\u5b9e\u9645\u4e0a\u662f\u4e3a\u4e86\u89e3\u51b3\u5ba2\u6237\u7a0b\u5e8f\u9700\u8981\u65b0\u529f\u80fd\uff0c\u4f46\u662f\u65e2\u4e0d\u80fd\u4fee\u6539\u5df2\u6709\u7c7b\u5e93\uff0c\u53c8\u4e0d\u597d\u591a\u6539\u5ba2\u6237\u7a0b\u5e8f\u7684\u76ee\u7684\u63d0\u51fa\u7684\uff0c\u5b83\u901a\u8fc7\u7ee7\u627f\u5e76\u5305\u88f9\u65e2\u6709\u7684\u7c7b\uff0c\u5b9e\u73b0\u5bf9\u5df2\u6709\u7c7b\u7684\u529f\u80fd\u7684\u6269\u5145\u3002\u53ef\u4ee5\u770b\u5230\uff0c\u8fd9\u4e2a\u6a21\u5f0f\u5f88\u597d\u7684\u4f53\u73b0\u4e86\u8bbe\u8ba1\u6a21\u5f0f\u4e2d\u5bf9\u4fee\u6539\u5c01\u95ed\uff0c\u5bf9\u6269\u5145\u5f00\u653e\u7684\u57fa\u672c\u539f\u5219\uff0c\u5bf9\u4e8e\u539f\u59cb\u7c7bB\u548c\u539f\u59cb\u5ba2\u6237\u4ee3\u7801\u90fd\u6ca1\u6709\u4fee\u6539\uff0c\u4f46\u5374\u901a\u8fc7\u589e\u52a0\u65b0\u7684\u4ee3\u7801\u76f4\u63a5\u63d0\u4f9b\u4e86\u65b0\u7684\u529f\u80fd\u3002\u4ee3\u7801\u5982\u4e0b\uff1a<\/p>\n<pre>\r\n#include &lt;iostream&gt;\r\nusing namespace std;\r\n\/\/\u57fa\u7c7b\uff1a\u4e3a\u4e86\u80fd\u591f\u88ab\u88c5\u9970\uff0c\u8fd9\u4e2a\u5fc5\u987b\u662f\u4e2a\u80fd\u591f\u88ab\u7ee7\u627f\u7684\u7c7b\r\nclass B\r\n{\r\npublic:\r\n    B(char n): c(n) {}\r\n    B(): c('X') {}\r\n    ~B() {}\r\n    \/\/\u53ef\u4ee5\u88ab\u6269\u5145\u529f\u80fd\u7684\u65b9\u6cd5\uff0c\u9700\u8981\u591a\u6001\u7279\u6027\uff0c\u4ee5\u4fbf\u5b50\u7c7b\u8fdb\u884c\u6269\u5145\r\n    \/\/\u76ee\u524d\u7684\u529f\u80fd\u5c31\u662f\u663e\u793a\u4e00\u4e2a\u5b57\u7b26\uff0c\u8fd9\u4e2a\u5b57\u7b26\u662f\u7528\u8fd9\u4e2a\u57fa\u7c7b\u5305\u88f9\u7684\r\n    virtual void display() { cout << c ; }\r\nprivate:\r\n    char c;\r\n};\r\n\r\n\/\/\u62bd\u8c61\u88c5\u9970\u5668\uff1a\u5f00\u59cb\u8fdb\u884c\u529f\u80fd\u6269\u5145\u7684\u6846\u67b6\uff0c\u7ee7\u627f\u57fa\u7c7b\u5e76\u4e14\u5305\u88f9\u57fa\u7c7b\r\nclass A : public B\r\n{\r\npublic:\r\n    A(B &#038;t): b(t) {}\r\n    ~A() {}\r\n    \/\/\u8986\u76d6\u57fa\u7c7b\u7684\u529f\u80fd\uff0c\u4f46\u662f\uff0c\u5475\u5475\uff0c\u5b9e\u9645\u4e0a\u53ea\u662f\u628a\u63a7\u5236\u4f20\u9012\u5230\u88ab\u5305\u88f9\u7684\u57fa\u7c7b\r\n    \/\/\u53ef\u522b\u5fd8\u4e86\uff0c\u8fd9\u65f6\u7684b\u53ef\u662f\u57fa\u7c7b\u5f15\u7528\uff0c\u8fd9\u662f\u6709\u591a\u6001\u673a\u5236\u7684\u8c03\u7528\r\n    void display() { b.display(); }\r\nprivate:\r\n    B &b;\r\n};\r\n\r\n\/\/\u771f\u6b63\u7684\u88c5\u9970\u529f\u80fd\uff0c\u6269\u5145\u5b9e\u9645\u529f\u80fd\uff0c\u591a\u663e\u793a\u4e00\u4e2a\u5b57\u7b26\uff0c\u5c31\u662f\u90a3\u4e2an,\u5b83\u4f1a\u91cd\u65b0\u5305\u88f9\u8fd9\u4e2a\u5b57\u7b26\r\nclass C : public A\r\n{\r\npublic:\r\n    C(B &#038;t, char n): A(t) , c(n) {};\r\n    ~C(){}\r\n    void display()\r\n    {\r\n        cout << c;\r\n        \/\/\u975e\u5e38\u5173\u952e\u7684\u4e00\u6b65\uff0c\u5c06\u63a7\u5236\u8f6c\u53d1\u7ed9\u4e0a\u4e00\u5c42\u7ee7\u627f\u7684\u540c\u540d\u51fd\u6570\uff0c\r\n        \/\/\u56e0\u4e3a\u662f\u76f4\u63a5\u5728\u5185\u90e8\u53d1\u8d77\u8c03\u7528\uff0c\u8fd9\u4e2a\u53ef\u6ca1\u6709\u591a\u6001\r\n        A::display();\r\n     } \r\nprivate:\r\n     char c; \r\n}; \r\n\r\nint main() \r\n{\r\n     B *p_obj = new B('A'); \/\/\u539f\u59cb\u4ee3\u7801\uff0c\u4e0d\u4fee\u6539\r\n     p_obj = new C(*p_obj, 'B'); \/\/\u589e\u52a0\u7684\u4ee3\u7801\r\n     p_obj =  new C(*p_obj, 'C'); \/\/\u589e\u52a0\u7684\u4ee3\u7801\r\n     \/\/\u539f\u672c\u7684\u7a0b\u5e8f\u529f\u80fd\uff0c\u5c31\u662f\u663e\u793a\u4e00\u4e2aA\u3002\r\n     \/\/\u73b0\u5728\u589e\u52a0\u4e86\u4e24\u5c42\u5305\u88f9\uff0c\u5c31\u53ef\u4ee5\u591a\u663e\u793a\u4e24\u4e2a\u5b57\u6bcd\u54af\r\n     p_obj->display(); \/\/\u539f\u59cb\u4ee3\u7801\uff0c\u4e0d\u4fee\u6539\r\n    cout << endl;\r\n}\r\n<\/pre>\n","protected":false},"excerpt":{"rendered":"<p>\u8fd9\u91cc\u8981\u8bf4\u7684\u662f\u8fd9\u4e2a\u53eb\u505a\u201c\u88c5\u9970\u5668\u201d\u7684\u8bbe\u8ba1\u6a21\u5f0f\u7684\u6700\u6700\u7b80\u5355\u7684C++\u5b9e\u73b0\u3002 \u88c5\u9970\u5668\u6a21\u5f0f\u5b9e\u9645 &hellip; <a href=\"https:\/\/www.pufengdu.org\/blog\/?p=339\">\u7ee7\u7eed\u9605\u8bfb <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[5],"tags":[],"_links":{"self":[{"href":"https:\/\/www.pufengdu.org\/blog\/index.php?rest_route=\/wp\/v2\/posts\/339"}],"collection":[{"href":"https:\/\/www.pufengdu.org\/blog\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.pufengdu.org\/blog\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.pufengdu.org\/blog\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.pufengdu.org\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=339"}],"version-history":[{"count":6,"href":"https:\/\/www.pufengdu.org\/blog\/index.php?rest_route=\/wp\/v2\/posts\/339\/revisions"}],"predecessor-version":[{"id":346,"href":"https:\/\/www.pufengdu.org\/blog\/index.php?rest_route=\/wp\/v2\/posts\/339\/revisions\/346"}],"wp:attachment":[{"href":"https:\/\/www.pufengdu.org\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=339"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.pufengdu.org\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=339"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.pufengdu.org\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=339"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}