C++¹ÖºÂ7²ó¤Ç¤¹¡£ º£²ó¤Î¥µ¥ó¥×¥ë ´ðÄ쥯¥é¥¹¤ÇÄêµÁ¤µ¤ì¤Æ¤¤¤ë´Ø¿ô¤ÈƱ̾¤Ç°ú¿ôÌá¤êÃͤ¬Æ±¤¸´Ø¿ô¤òÇÉÀ¸¥¯¥é¥¹¤ËÄêµÁ¤¹¤ë¤È ¥ª¡¼¥Ð¥é¥¤¥É¤ÎÍÑÅӤȤ·¤Æ¤Ï ¶ñÂÎÎã¤ò¼¨¤·¤Þ¤¹ class Super{ public: void Func(){ printf(¡ÈCall Super\n¡É); } // ¡ }; class Sub : public Super { public: void Func(){ printf(¡ÈCall Sub\n¡É); } // ¢ }; int main(){ Super super; super.Func(); // ¡¤¬¸Æ¤Ð¤ì¤ë Sub sub; sub.Func(); // ¢¤¬¸Æ¤Ð¤ì¤ë¡Ê¾å½ñ¤¤µ¤ì¤¿Func¤ò¸Æ¤Ö¡Ë return 0; } º£²ó¤Î¥µ¥ó¥×¥ë¤Ç¤¹ // main.cpp #include <iostream> /////////////////////////////////////////// // ¾¦¿Í¥¯¥é¥¹ class Merchant{ public: void Sell(); }; void Merchant::Sell(){ printf("¤Ø¤¤¡¢¤¤¤é¤Ã¤·¤ã¤¤¡ª¤è¤í¤º²°¤À¤è\n"); } /////////////////////////////////////////// // Éð´ï¾¦¿Í¥¯¥é¥¹ class WeaponMerchant : public Merchant { public: // ¥ª¡¼¥Ð¡¼¥é¥¤¥É void Sell(); }; void WeaponMerchant::Sell(){ printf("Éð´ï¤Ï¤¤¤«¤¬¤«¤Í¡©\n"); } /////////////////////////////////////////// // ¥¢¥¤¥Æ¥à¾¦¿Í¥¯¥é¥¹ class ItemMerchant : public Merchant { public: // ¥ª¡¼¥Ð¡¼¥é¥¤¥É void Sell(); }; void ItemMerchant::Sell(){ printf("¥¢¥¤¥Æ¥à¤Ï¤¤¤«¤¬¤Ç¤¹¤«¡©\n"); } /////////////////////////////////////////// int main(){ Merchant merchant; merchant.Sell(); printf("\n"); WeaponMerchant weaponmerchant; weaponmerchant.Sell(); printf("\n"); ItemMerchant itemmerchant; itemmerchant.Sell(); printf("\n"); return 0; } |