virtual-functions

    0

    2答えて

    オブジェクトごとに定義できる関数が必要なクラスがあります。私は、各オブジェクトの特定の関数を定義しながら、そのオブジェクトのベクトルを定義できるようにしたいと考えています。私のオブジェクトのこれらのベクトルは、ライブラリの一部を構成しようとしています。ここで私が何をしようとしています何の失敗した例がある次のように #include <iostream> #include <vector> c

    3

    4答えて

    メソッドの具体的な実装を(オーバーライドされていても)カテゴリから呼び出す必要があります。出来ますか? (念のために:は、私が知っている、Objective-Cの中のすべてのメソッドは、仮想です。)これはあなたの問題を解決することがあり // class A @interface A - (void)foo; @end @implementation A - (void)foo

    0

    2答えて

    私は仮想関数および仮想テーブルの基本的な概念を理解し、 なぜc.A();プリントアウト parent A child が、仮想キーワードなし次の例では、私は理解していませんParent :: func()の場合は、 parent A parent 詳細をお知らせください。 vテーブル、メモリ(ヒープ、スタック)などで説明することは素晴らしいことです。 ありがとうございました。 #inc

    1

    2答えて

    私はこのプロジェクトの最後のステップにあり、何をすべきかに固執しています。このプロジェクトは、次のような書籍情報を含む入力ファイルを取得することです: A Book on C Al Kelly and Ira Pohl Addison-Wesley, Fifth Edition 1998. 0201183994 C How to Program Paul Deitel and Harv

    0

    1答えて

    へのコールに一致しません。static_castを使用する際に問題があります。 #include <iostream> using namespace std; class Mtx { // base matrix private: // refer to derived class Mtx& ReferToDerived() { return static

    -2

    2答えて

    これが可能かどうか、それを行うべきかどうかはわかりません。仮想関数を持つ基底クラスを使用するときに、ソースを含まずに私の.hppファイルを厳密にインターフェースしておくことはできますか?このように動作するように変更したい学習/テストコードをここに示します。 Addressは、クラスEmailAddressおよびWebAddressに継承される基本クラスです。 address.cpp: ​​ add

    1

    3答えて

    抽象クラスのオブジェクトを作成することはできません。では、抽象基本クラスと派生クラスの両方に定義された仮想関数をどのように呼び出すことができますか?私は抽象基本クラスでコードを実行したいが、現在、私は派生クラスのオブジェクトを使用しています。 class T { public: virtual int f1()=0; virtual int f2() { a = 5

    5

    2答えて

    次のコードはlate binding test()メソッドですが、早くバインドしないでください。テスト()メソッドは、クラスB(ただし、クラスA内)で仮想ではなく、関数がクラスのvirtual宣言されていたら、私たちはクラスB class A{ public: virtual void test(){ cout<<"test a"; } }; c

    1

    1答えて

    このプログラムは、ダイナミックな2次元配列ボードがルームクラスでいっぱいのゲームです。各ルームクラスには、4つの異なる子クラスのいずれかを継承するプライベートポインタイベントクラスがあります。私の目標は、各子クラス内でイベントクラスを仮想関数にすることで、継承された子クラスから文字列を返すイベントで純粋な仮想関数を呼び出すことができます。私はSEGのエラーが発生しています。ここに私の簡略化されたコ

    1

    1答えて

    にない型指定子私は(C++での)クラスの以下の構造を有する: template<T> class A { class B { class C_Base { virtual int foo(const T &a, const T &b) = 0; }; template<U> class C final : public C