問題タブ [constructor]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c# - C#でベースコンストラクターを呼び出す
基本クラスから継承し、継承されたクラスのコンストラクターから基本クラスのコンストラクターに何かを渡したい場合、どうすればよいですか?
たとえば、Exceptionクラスから継承する場合、次のようなことを行います。
基本的に私が欲しいのは、文字列メッセージを基本のExceptionクラスに渡せるようにすることです。
c# - C# では、基本コンストラクターを呼び出す必要がありますか?
C# では、既定のコンストラクターを持つ継承されたクラスがある場合、基本クラスのコンストラクターを明示的に呼び出す必要がありますか?それとも暗黙的に呼び出されますか?
c++ - C++では、コンストラクタとデストラクタをインライン関数にすることができますか?
VC++ は、クラス宣言内で実装される関数をインライン関数にします。
次のようにクラスを宣言するFoo
と、CONSTRUCTOR および DESTRUCTOR インライン関数になりますか?
php - PHP5 クラスでは、プライベート コンストラクターはいつ呼び出されますか?
シングルトンを意図した PHP (>= 5.0) クラスを書いているとしましょう。私が読んだすべてのドキュメントでは、クラス コンストラクターをプライベートにするように指示されているため、クラスを直接インスタンス化することはできません。
したがって、次のようなものがある場合:
私がやっている場合以外に __construct() が呼び出されるケースはありますか?
クラス自体の中で呼び出す?
また、なぜ SillyDB を内部からインスタンス化できるのですか?
c# - インターフェイスを実装する型に対して、パラメーターのないコンストラクターをどのように要求できますか?
方法はありますか?
特定のインターフェイスを実装するすべての型がパラメーターなしのコンストラクターを持つ必要がありますが、それは可能ですか?
社内の他の開発者が特定のプロジェクトで使用するための基本コードを開発しています。
特定のタスクを実行するタイプのインスタンスを (異なるスレッドで) 作成するプロセスがあり、これらのタイプが特定の契約 (エルゴ、インターフェイス) に従う必要があります。
インターフェイスはアセンブリの内部になります
インターフェイスのないこのシナリオについて提案がある場合は、喜んで検討します...
parameters - コンストラクター引数が多すぎますか?
次のフィールドを含むCustomerというクラスがあるとします。
- ユーザー名
- Eメール
- ファーストネーム
- 苗字
また、ビジネスロジックに従って、すべてのCustomerオブジェクトにこれらの4つのプロパティを定義する必要があるとしましょう。
これで、コンストラクターにこれらの各プロパティを指定させることで、これを非常に簡単に行うことができます。ただし、Customerオブジェクトに必須フィールドを追加する必要がある場合に、これが制御不能になる可能性があることは簡単にわかります。
20以上の引数をコンストラクターに取り込むクラスを見てきましたが、それらを使用するのは面倒です。ただし、代わりに、これらのフィールドが必要ない場合は、未定義の情報が発生するリスクがあります。さらに悪いことに、これらのプロパティを指定するために呼び出し元のコードに依存している場合は、オブジェクト参照エラーが発生します。
これに代わるものはありますか、それともコンストラクター引数のX量が多すぎて、一緒に暮らすことができないかどうかを判断する必要がありますか?
c# - C#の自動プロパティに初期値を与える最良の方法は何ですか?
C# の自動プロパティに初期値を与えるにはどうすればよいですか?
コンストラクターを使用するか、古い構文に戻します。
コンストラクターの使用:
通常のプロパティ構文の使用 (初期値あり)
より良い方法はありますか?
virtual - 仮想コンストラクター
仮想コンストラクターの必要性はありますか? もしそうなら、誰でもシナリオを投稿できますか?
exception - コンストラクターが例外をスローするのはいつですか?
コンストラクターが例外をスローするのはいつですか? (または Objective C の場合: init'er が nil を返すのはいつですか?)
オブジェクトが完全でない場合、コンストラクターは失敗し、オブジェクトの作成を拒否するように思えます。つまり、コンストラクターは、意味のあるメソッドを呼び出すことができる機能的で動作するオブジェクトを提供するために、呼び出し元と契約を結ぶ必要がありますか? それは合理的ですか?
c++ - デフォルトの構築値を返すことに何か問題がありますか?
次のコードがあるとします。
これはかなりうまく機能しているようで、戻り値を作成するためだけに変数を宣言する手間が省けます。しかし、私はこれをどんな種類のチュートリアルやリファレンスでも見たことがないと思います。これはコンパイラ固有のもの(ビジュアルC ++)ですか?それともこれは何か間違ったことをしていますか?