コンストラクタを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、coupling and opengl
- 4. のpython 3.6.3(OOPS)
- 5. OOPS&プライベートクラスについて
- 6. c2hsとlanguage-cをインストールできない
- 7. While-languageインタープリタOCaml
- 8. Mongodb Natural Languageクエリ
- 9. Chatscript foreign language
- 10. facebook js sdk language
- 11. Accept language list
- 12. Jira Query Language( "bug")
- 13. Hibernate Query Language typo?
- 14. Ionic Single Language
- 15. Hypertable Query Language
- 16. sp_execute_external_script @language = N'R」
- 17. Answer by python language
- 18. Django:default language i18n
- 19. Python - language-check 1.0
- 20. Google Natural Language API
- 21. CultureInfo for Latin language
- 22. Google AdSense - language
- 23. Reactjs、reducers、language switching
- 24. Natural Language CFG builderアルゴリズム
- 25. LINQ to Custom Query Language?
- 26. JavaコレクションフレームワークとOOPSを使用したコンソールアプリケーション
- 27. 削除されたユーザー 'postgres' - oops
- 28. C言語のfrom-language-to-languageのiconv翻字に関する簡単な例はありますか?
- 29. Marble&Urn in language R
- 30. [insert language here]のテストフレームワーク
これはなぜ閉じられるべきなのか分かりません。非常に簡単で基本的な質問ですが、具体的な答えがあるプログラミングに関連する質問です。 – oezi
oezi/agree。最近のstackoverflowがあまりにも厄介になっています。 –