問題タブ [multiple-constructors]
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# 文字列の挿入
私はC#にかなり慣れていないので、文字列の挿入(つまり"some {0} string", toInsert
)を理解しようとしていますが、予期していなかった問題に遭遇しました...
コンストラクターが 2 つある場合:
文字列挿入で最初のコンストラクターを使用することは可能ですか?
それとも、C# はこれを 2 番目のコンストラクターとして解釈し、リテラル"abc{0}ghi"
を最初の引数として渡しますか?
php - PHP で複数のコンストラクターを実行する最良の方法
一意の引数シグネチャを持つ 2 つの __construct 関数を PHP クラスに配置することはできません。私はこれをしたい:
PHPでこれを行う最良の方法は何ですか?
php - PHPのコンストラクターから別のコンストラクターを呼び出す
PHPクラスで定義されたコンストラクターがいくつか必要です。ただし、コンストラクターのコードは現在非常に似ています。可能であれば、コードを繰り返さないほうがいいです。phpクラスの1つのコンストラクター内から他のコンストラクターを呼び出す方法はありますか?PHPクラスに複数のコンストラクターを含める方法はありますか?
たとえば、いくつかのInitメソッドを作成することで、これを解決できることを知っています。しかし、これを回避する方法はありますか?
java - 列挙型と列挙型コンストラクターをスタックするか、サブクラス化するか、どちらが優れたJavaプログラミング手法ですか?
種類が異なる有限数のアイテムを考えると、それらをスタックされた列挙型と列挙型コンストラクターで表すのが良いですか、それともサブクラス化するのが良いですか?それとも、より良いアプローチがありますか?
コンテキストを説明するために、私の小さなRPGプログラム(皮肉なことに単純なはずです)では、キャラクターのインベントリにさまざまな種類のアイテムがあります。アイテムは、タイプ、用途、効果によって異なります。
たとえば、インベントリの1つのアイテムは、ユーティリティ属性を調整するグレムリンと呼ばれる呪文の巻物です。別のアイテムは、戦闘で使用され、ダメージを与えるモートと呼ばれる剣である可能性があります。
私のRPGコードでは、在庫アイテムを表す2つの方法を試しました。1つの方法は、サブクラス化(たとえば、InventoryItem-> Spell-> AdjustingAttributes; InventoryItem-> Weapon-> Sword)を行い、必要に応じて各サブクラスをインスタンス化し、GremlinやMortなどの名前を割り当てることでした。
もう1つの方法は、列挙型と列挙型コンストラクターをスタックすることでした。たとえば、itemCategory、itemSpellTypes、itemWeaponTypesの列挙型を作成しましたが、InventoryItemの列挙型は次のようになりました。
これらの2つのアプローチよりも優れたJavaプログラミング手法はありますか?または、これらが唯一の方法である場合、2つのうちどちらが優れていますか?よろしくお願いします。
c# - C# - 既存の (生成された) コンストラクターへの追加
生成されたコードにあるコンストラクターがあります。生成されたコードを変更したくありませんが (再生成すると上書きされるため)、コンストラクターにいくつかの機能を追加する必要があります。
コード例を次に示します。
私が思いつくことができる唯一の解決策はこれです:
私はこれがうまくいくと確信していますが、コンストラクターに不自由な未使用のパラメーターがあり、それらをすべて変更する必要があります。より良い方法はありますか?そうでなくても結構ですが、聞いてみようと思いました。
c# - 複数のコンストラクターを持つMEFコンストラクターパラメーター
私はMEFを使い始めており、次のような複数のコンストラクターを持つクラスがあります。
2番目のコンストラクターに値をcatalog.ComposeExportedValue()
提供するために作成するときに使用しています。par1
私が使用しているコンポーネントを保持するには:
そして、foo
インスタンスを作成するために、valueプロパティを使用していますFooList[0].Value
。
クラスの2番目のコンストラクターがfoo
呼び出されないことを除いて、すべてが正常に機能します。どうしたの?
MEFがクラスをインスタンス化するときに使用するコンストラクターを選択するにはどうすればよいですか?
java - Scalaで、複数のコンストラクターを使用してJavaクラスをサブクラス化するにはどうすればよいですか?
複数のコンストラクターを持つJavaクラスがあるとします。
Scalaで拡張し、Baseの3つのコンストラクターすべてへのアクセスを提供するにはどうすればよいですか?Scalaでは、サブクラスはそのスーパークラスのコンストラクターの1つのみを呼び出すことができます。このルールを回避するにはどうすればよいですか?
Javaクラスは、変更できないレガシーコードであると想定します。
unity-container - Unity とコンストラクター
ほとんどの引数を持つものから最も具体的でないもの(デフォルトのコンストラクタ)まで、定義されたすべてのコンストラクタを団結させることは可能ですか?
編集
私が意味したのは:
Unity がほとんどのパラメーターを持つコンストラクターのみを試行することは望ましくありません。適切なコンストラクターが見つかるまで試行を続けてほしい。Unity がデフォルトでこの動作を提供しない場合、これを行うための拡張機能または何かを作成することは可能ですか?
編集 2
2 つのコンストラクターを持つクラスを取得しました。
クラスは、複数のプロジェクトで使用されるライブラリに存在します。このプロジェクトでは、2 番目のコンストラクターを使用します。しかし、最初のコンストラクターによる依存関係を満たすことができないため、Unity は停止します。また、最初のコンストラクターは他のプロジェクトの DI によって使用されるため、クラスを変更したくありません。
したがって、Unity がすべてのコンストラクターを解決しようとする必要があります。
c++ - クラス コンストラクターの boost::shared_ptr のデフォルト値
次のようなクラスがあるとします
私の質問は、そのptrのデフォルト値は何ですか? を使用してそのクラスのインスタンスを作成できるようにしたい
確かに、1 つのパラメーターだけで別のコンストラクターを作成できることはわかっていますが、次のようなものを探しています。
出来ますか?現在、私は 2 つのコンストラクターの方法を使用していますが、この方法で行うのは素晴らしいことです。
.net - C#のthis()およびbase()コンストラクター
this()コンストラクターとbase()コンストラクターの両方を指定するための言語構文はないようです。次のコードが与えられます:
コンパイラーは、:this(0)呼び出しのコメントを解除するときに、「{」が予期されていたことを示すエラーを表示します。このようなことを防ぐためにこの機能が明確に提供されている場合、コードをプライベートメソッドに分解するので、これは面倒です。
私は単にこれを間違っているのですか?区切り文字、セミコロン、コンマを試していません...これは開発チームからの見落としだったようです。なぜこれが省略されたのか、私がこれを間違った方法で行っているのか、誰かが代替案について良い提案をしているのか、私は興味があります。