virtual-functions

    16

    3答えて

    次のC++コードは正しいと思いますが、「-Woverloaded-virtual」でコンパイルするといくつかの警告が表示されますが、警告が偽であるか、このコードに問題がありますか?それは私がそれを避けるために何ができるか偽の警告がある場合 は、警告の派生のgetのRIDにすべての例外の仮想バリアントを定義多分よりよい解決策がある G ++コマンド: g++ -c -Woverloaded-virt

    1

    2答えて

    方法論を呼び出す際には明確な説明が必要です。基本クラスがあり、派生クラスオブジェクトを使用して派生クラス関数を呼び出そうとしています。それは間違って何 このsenarioに Plsのは間違っていただきました私のコードで私に言うことができ #include "stdafx.h" #include <malloc.h> class derived; class base { public

    0

    1答えて

    に入力引数である基底クラスの仮想関数を呼び出す方法を、私はこのシナリオでは struct Base { virtual void stuff(/*base stuff*/); }; struct Derived : public Base { void stuff(/*derived stuff*/); }; void function1(Derived& obj)

    1

    4答えて

    (C++、MinGWの4.4.0、WindowsのOS) すべてのことのラベル< 1>と< 2>を除き、コードにコメントしているが、私の推測です。あなたは、私がどこか間違っていると思う場合には、私を修正してください: class A { public: virtual void disp(); //not necessary to define as placeholder in vt

    5

    3答えて

    次のコードを考えてみましょう:ユーザーがアクセスを得るためにはstatic_castを使用する可能性があるので、基底クラスと同じアクセスを残す) 1:私は問題に思考の二つの異なる学校を聞いた class Base { public: virtual void Foo() {} }; class Derived : public Base { private: vo

    1

    1答えて

    私は似た名前のそのサブ/スーパークラスの関数を呼び出す仮想関数のスタックオーバーフローの質問と回答の茄多を見ながら、私はこれを取得しています: CCLog("Yay"); //ensure it's called CCScene * tScene = TitleDescription::scene(); //grab the scene TitleDescription * t = rein

    2

    1答えて

    可能性の重複: Calling base class definition of virtual member function with function pointer 次の階層を考える:私たちはそうのようBase::fにコールを強制することができ struct Base { virtual void f() = 0; }; void Base::f() { co

    0

    1答えて

    私は以下のクラス階層を持っています(実際にはさらに多くのクラスがあります)。静的多型を利用するために以下を再構成することが可能かどうか疑問に思っていましたか? struct return_val {}; struct base { virtual ~base(){} virtual return_val work(){}; }; struct derivedtype

    3

    2答えて

    この件に関してかなりの数の記事がありますが、私はこの正確な質問に対する答えを見つけるのに苦労しています。 ファンクションコールの方が高速ですが、純粋仮想インターフェイスまたはpimplですか? pimplを使用すると1つではなく2つの関数呼び出しが必要になるため、純仮想インターフェイスが高速になるように思えます。あるいは、これでは何らかの巧妙なコンパイラトリックが引き継ぐでしょう場合? 編集: 非

    0

    3答えて

    私は最近、迂回路とそれに付随するすべてのものでプログラミングしてきました。私は多くの異なる機能を迂回してきました。 thiscall、stdcall、cdecl、仮想関数などです。しかし、私が管理していない(可能ではないかもしれない)ことがあり、それは基本クラスの仮想関数をフックすることです。例えば;仮想関数(空)を宣言するCarクラスがありますDrive。その後、車を継承し、Driveを実装する