oop - 継承と集約

oop - 継承と集約

オブジェクト指向システムでコードを最適に拡張、拡張、再利用する方法には、2つの考え方があります。 継承:サブクラスを作成してクラスの機能を拡張します。 新しい機能を提供するために、サブクラスのスーパークラスメンバをオーバーライドします。 スーパークラスが特定のインタフェースを必要としているが、その実装については無関係である場合、メソッドを抽象/仮想にしてサブクラスを強制的に「空白を埋める」よう…


オブジェクトの型がC++の特定のサブクラスであるかどうかを調べるにはどうすればよいですか?

私はtypeid()を使用する行に沿って考えていましたが、その型が別のクラスのサブクラスかどうかを尋ねる方法はわかりません(それは抽象的です)…


c# - クラスが汎用クラスから派生しているかどうかを調べる

私は派生クラスで私のプロジェクトに汎用クラスを持っています。 public class GenericClass<T>:GenericInterface<T>{} public class Test:GenericClass<SomeType>{} TypeオブジェクトがGenericClassから派生しているかどうかを調べる方法はありますか? t.IsSubclassOf…


C++では、構造体からクラスを派生させることはできますか

問題は本当にそれをすべて言う。 私は構造体からクラスを派生させることができましたか、または私の構造体を埋め込むクラスを作成し、コピーコンストラクタとその2つの間を移動する=演算子を定義する必要がありますか?…


inheritance - std:: ostreamから継承する方法は?

私は周りにグーグルであり、私はちょうどこれに簡単な答えを見つけることができません。 STLが一般的であるように、それは単純でなければなりません。 std:: ostreamから継承したMyOStreamを定義したいと思います。 何かが私のストリームに書き込まれるたびにfoo()を呼びたいとしましょう。 class MyOStream:public ostream{public:…


c# - 派生したすべての型を取得する

派生したすべての型の型を見つけるには、より優れた(より性能の高い、またはより良いコード;)方法がありますか? 現在私は次のようなものを使っています: 使用されているアセンブリですべての型を取得する それが 'IsAssignable'の場合は、すべてのタイプで自分のタイプをチェックしてください これをやるより良い方法があるのだろうか?…


C++のシングルトンと抽象基底クラス

最近、シングルトンの実装についての質問がありましたが、抽象基本クラスが関係していました。 このようなクラス階層があるとします。 class IFoo{...};// it's ABC class Foo:public IFoo{...}; シングルトンクラスは次のように定義されています。 template<typename T> class Singleton{public:…


c# - .netのすべてのタイプはSystem.Objectから継承していますか?

この質問には既に回答があります:.NETのすべてがオブジェクトですか? 17の答え これは非常に基本的な質問かもしれませんが、私は少し混乱しています。 Int32/Double/任意の値型のコードを反映すると、構造体であり、次のようになります。[Serializable, StructLayout(LayoutKind.Sequential), ComVisible(true)]…


C#内部ベースクラスから派生型の名前を取得する

私は、基本クラスでマウスイベントを処理する際の問題をトラブルシューティングしています。 ブレークポイントはマウスイベントのトラブルシューティングではうまく機能しないので、デバッグ出力をイベントハンドラに追加したいと思います。 しかし、基本クラスのイベント処理コードが多数の派生クラスによって共有され、特定のクラスのみが問題を呈しているため、実際の派生クラスの名前をデバッグ情報に含めることが重要です…


C++でのインタフェース継承

次のようなクラス構造があります。 class InterfaceA{virtual void methodA=0;}class ClassA:public InterfaceA{void methodA();}class InterfaceB:public InterfaceA{virtual void methodB=0;}clas…





継承 基底クラス クラス virtual オーバーライド 代入 呼び出し 判定 override 基底クラスから派生クラスを呼び出す