5


1

あなたがCの構文を持っているという事実、そしてそれと共に、ポインタやデストラクタのようなものを除いて、私は本当の利点を見ていません。

4 Answer


13


C#よりもC / CLIを使用する理由について話しているのであれば、主な理由は次のように考えられます。

  1. Cの開発者にとってはより自然なことかもしれません(これはおそらく本当ではないと思いますが)

  2. C / CLIには、ネイティブ環境と管理対象環境をつなぐための非常に優れた機能があります( 'IJW' - It Just Works - テクノロジを使用)。

Herb Sutterがおそらく最高の概観を与えると思います。

http://www.gotw.ca/publications/C CLIRationale.pdf [C / CLIの設計根拠]

なぜC#/ .NET上でネイティブCを使用したいのかを知りたい場合は、ネイティブコード上で管理環境(安全性、開発の容易さ)が必要な理由(絶対制御、おそらくスピードの向上)が考えられます。 それぞれには議論があります、そして答えは本当にあなたが発展させたいものとあなたの市場が何であるかによって異なります。


6


私はあなたがC / CLIに言及していて、それをC#と比較していると思います。 C / CLIはCの「風味」ではありません。 これは、まったく異なる標準ライブラリとまったく異なる規則を持つまったく新しい言語です。

C / CLIは、Cと.NETの間の接着言語として価値があると考えられますが、インターフェイスの接着剤以外には使用しません。C#は他のすべてのアプリケーションでCよりも非常に優れています。

Adamが述べているようなMS C拡張を参照しているのであれば、それらがあなたの仕事を容易にするのであればそれらを使用しない理由はありません。


1


C \ CLIを使う一番の良い理由は、DotNet言語とNative C言語をやりとりすることです。 .Net and let some logic in C, and C\CLI is the good bridge to 2つのテクノの間でコミュニケーションをとるためには、そのためにCOMコンポーネントを使用することもできますが、多くの理由からそれは良い選択ではありません。


0


Cの異なるフレーバーを互いに比較することが、CをC#と比較するのと同じ問題ではないと思います。 C#はCの異なるフレーバー間の違いと比較して非常に異なる獣です。