コンストラクタをpublic
と宣言するのはなぜですか?C++ language oops
1
A
答えて
1
以下のコード行では、コンストラクタを使用して初期化を行う必要があります。この場合、コンストラクタがprivate
の場合、クラススコープの外でどのようにアクセスされるのでしょうか。さらに、インスタンスobj
の間にfoo::foo(int num)
がデフォルトで呼び出されます。
foo *obj = new foo(5);
1
他のオブジェクトからオブジェクトを構築することはできません。
+3
必要ありません。プライベートまたは保護されたコンストラクタと、オブジェクトのコピーを返すpublic staticメソッド(またはfriend関数)を持つことができます。 –
2
コンストラクタはオブジェクトの作成方法です。あなたのコンストラクタがパブリックでない場合、クラスの外部から新しいオブジェクトを構築するために使用することはできませんでした。時々、非パブリックコンストラクタは、たとえば、有用であることが
注:今すぐ
class foo
{
public:
static foo make_foo(int i)
{
// only functions of foo can use that constructor,
// because it's private; return a foo
return foo(i);
}
private:
foo(int i) { /* construct */ }
};
foo
だけどんな理由であれ、機能make_foo
を介して作成することができます。
関連する問題
- 1. OOPS&C#
- 2. oops - firefoxのゴーストタブボックス
- 3. OOPS&プライベートクラスについて
- 4. c2hsとlanguage-cをインストールできない
- 5. While-languageインタープリタOCaml
- 6. Accept language list
- 7. Django:default language i18n
- 8. CultureInfo for Latin language
- 9. Mongodb Natural Languageクエリ
- 10. Google AdSense - language
- 11. Jira Query Language( "bug")
- 12. LINQ to Custom Query Language?
- 13. Natural Language CFG builderアルゴリズム
- 14. Marble&Urn in language R
- 15. Inno Setup if and language
- 16. [insert language here]のテストフレームワーク
- 17. C言語のfrom-language-to-languageのiconv翻字に関する簡単な例はありますか?
- 18. 削除されたユーザー 'postgres' - oops
- 19. 特有の結果。 #1-13 The C Programming Language Book
- 20. double-c-languageから絶対値を得る方法
- 21. ソースコード用のGoogle Language API?
- 22. プレイストアのXamarinフォーム "default language only"
- 23. Mule Query Language - Order by節
- 24. Java Unified Expression Languageサブ式
- 25. "The C Programming Language 2nd Edition"のこのコードにはバグがありますか?
- 26. TextMate Language Parserはどこですか?
- 27. Springブートローカリゼーションの問題 - Accept-Languageヘッダー
- 28. Spring Expression Language - アノテーションでシステムプロパティを取得
- 29. AndroidでのCTL(Complex Text Language)のサポート
- 30. Watson Natural Language Classifier - クラスのスケールを使用
これはなぜ閉じられるべきなのか分かりません。非常に簡単で基本的な質問ですが、具体的な答えがあるプログラミングに関連する質問です。 – oezi
oezi/agree。最近のstackoverflowがあまりにも厄介になっています。 –