可能性の重複:C#ので
Virtual member call in a constructorC#では、仮想メソッドをコンストラクタから呼び出すのは安全ですか?
、それはコンストラクタから仮想メソッドを呼び出しても安全ですか?言語仕様は何を表していますか?仕様からも引用してください。 安全なは、派生クラスの実装を呼び出すのですか?
この疑問は、C++ではではないので、コンストラクタから仮想関数を呼び出すことは安全です。
可能性の重複:C#ので
Virtual member call in a constructorC#では、仮想メソッドをコンストラクタから呼び出すのは安全ですか?
、それはコンストラクタから仮想メソッドを呼び出しても安全ですか?言語仕様は何を表していますか?仕様からも引用してください。 安全なは、派生クラスの実装を呼び出すのですか?
この疑問は、C++ではではないので、コンストラクタから仮想関数を呼び出すことは安全です。
仮想関数は、一致するコンストラクタがクラス不変式を確立する前に呼び出されるため、安全ではありません。
これとは対照的に、C++では安全です。呼び出される関数は、一致するコンストラクタの間ではなく、呼び出されます。
私は自分の質問を編集し、私が "安全"を意味するものを言った。 – Nawaz
いいえ!重複が存在します。近くに投票した! – Nawaz
私はすでに持っています。 –
派生クラスの実装を呼び出すときに「安全」と定義するのはなぜですか? C++の技術(クラスのどの部分が初期化されたかに基づいてメソッドの実装を呼び出す手法)がより安全な選択肢であるという妥当な議論をすることができます。 –