dポイントプレゼントキャンペーン実施中!

C++なのですが、複数のクラスで共通して使いたい関数がある場合、親クラスに共通したい
メンバ関数を作り、その子として複数のクラスを作るのが良いのでしょうか?

それ以外の方法だとクラスの外でstatic宣言した関数であればクラス内で使えるようでした。
(static宣言しないとコンパイルエラーとなりました)

しかし以下のサイトにあるように「共通関数継承のデメリット」があるようで推奨していないようです。

ttp://d.hatena.ne.jp/katzchang/20110216/p1
ttp://blog.jnito.com/entry/20110217/1297896355

なお、自分には上記サイトの内容は難しくて理解できませんでした。
つまり、「数のクラスで共通して使いたい関数がある」場合、上記サイトはどうすればいいと言っているのでしょうか?

よろしくお願い致します。

A 回答 (11件中11~11件)

え~と....



「static宣言しないとコンパイルエラーとなりました」って, どういうことでしょうか? そんなことはありえないのですが....
    • good
    • 0
この回答へのお礼

ありがとうございます。

大規模プロジェクトの中の一部分のコードを担当しています。
私はプログラマではないのですが事情によりプログラミングしています。

ちなみにプログラマの方に聞いたところ、

「あなたが関数を宣言している部分は、実はクラスの中なのです」
「その親クラスを例えばClassAとして、ClassAの中に関数funcAを宣言し、同じくそのClassAの中に
複数の子クラス(例えばClassB, ClassC)を宣言した場合、ClassB, ClassCでfuncAを使いたい
場合にはstaticを付けて宣言しないと使えないんです」

とのことでした。

お礼日時:2013/05/14 22:31

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています