そのための設計上の理由はありますか(多重継承を放棄した理由など)?
それとも十分に重要ではありませんでしたか?
同じ質問がメソッドのオプションのパラメーターにも当てはまります...これはすでにvb.netの最初のバージョンにありました...したがって、MSがオプションのパラメーターを許可しない原因となる怠惰、おそらくアーキテクチャの決定..そして彼らが持っていたようですC#4にはそれが含まれるので、それについての心変わり..
決定が何であり、なぜそれをあきらめたのか誰か知っていますか?
編集:
たぶん、あなたは私を完全に理解していませんでした。私は最近、計算プログラム (最後の桁まで、あらゆるサイズの数値をサポートする) に取り組んでいます。このプログラムでは、1 秒あたり文字通り何百万回も使用されるメソッドがあります。
Add(int num) というメソッドがあり、このメソッドはパラメータ ( Add(1);
) として 1 を使用して静かに使用されているとします。特に 1 つのメソッドに対して特別なメソッドを実装する方が高速であることがわかりました。num
そして、オーバーロードを意味するのではありません- AddOne と呼ばれる新しいメソッドを作成し、その中に Add メソッドを文字通りコピーし1
ます。これはひどく奇妙に思えるかもしれませんが、実際にはより高速です。
(醜い限り)
ここで驚くほど役立つ手動インラインを C# がサポートしていないのはなぜかと思いました。
ありがとう。(そして、なぜあなたは私に反対票を投じたのですか:S)
編集2:
これを追加するかどうかを自問しました。私は、そのようなプロジェクトに dot net などのプラットフォームを選択することの奇妙さ (および欠点) をよく知っていますが、dot net の最適化はあなたが思っているよりも重要だと思います... 特に Any CPU などの機能.