【初心者歓迎】C/C++室 Ver.72【環境依存OK】
at TECH
[
2ch
|
▼Menu
]
■コピペモード
□
スレを通常表示
□
オプションモード
□このスレッドのURL
■項目テキスト
981:デフォルトの名無しさん 10/05/20 16:20:56 只今C++の勉強中で クラスの継承と一緒にメンバ関数のオーバーライドが出来るとあるのですが、 これを使う意味ってあるのでしょうか? class ctest{ int m; char *p; public: virtual int put(char *); //pに文字列を入れる関数 } class stestSub : public ctest{ public: int put(char *); //pに文字列を入れる関数(全て小文字に変換) } ctest s1; s1.put("ABced"); stestSub s2; s2.put("zxcVB"); 以上のように定義してしまうと、s2からメインクラスのputを使う事が出来なくなるし、 別名でサブクラスに新たにput2()などで定義したほうがいいのではないでようか? 同じ名前で別の機能を持たせる意味が分からないのですが、どのような時に使用 するものなのでしょうか? 継承したプログラマがこの関数名はこの機能を持たせたいとか、そういったレベル で同じ名前にしているのか?と思っているのですが。 982:デフォルトの名無しさん 10/05/20 16:22:35 s2.ctest::put()
次ページ
最新レス表示
スレッドの検索
類似スレ一覧
話題のニュース
おまかせリスト
▼オプションを表示
レスジャンプ
mixiチェック!
Twitterに投稿
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch
4060日前に更新/255 KB
担当:undef