質問

C ++ CLI コンパイラは、変更せずにC ++クラスの大きなセットをコンパイルできますか?

C ++ CLIはC ++のスーパーセットですか?

役に立ちましたか?

解決

技術的にはありませんが、C ++コードの標準に応じて、おそらく大丈夫でしょう。 Windowsのものを取得すると、問題が発生する可能性があります。仕事で使用するゲームエンジン全体をC ++ / CLIで一度コンパイルしましたが、うまく機能しました。同僚はすべてのmozillaに対して同じことをしましたが、そのような運はありませんでした。

他のヒント

Wikipedia によると:

  

C ++ / CLIは、C ++スーパーセット指向のマネージC ++ではなく、独自の言語(たとえば、新しいキーワードセットを使用)と見なす必要があります

私はまだC ++ / CLIの学習曲線に慣れていませんが、私自身も同じ質問をしました。これまでのところ、C ++ / CLIは言語として、標準C ++。

CLI拡張機能を使用しない場合、C ++コードはネイティブのアンマネージコードになり、本質的には同じであるはずですが、ネイティブx86ではなくCLR ILにコンパイルされます。

CLI拡張機能の使用を開始(およびオブジェクト/ハンドル/マネージクラスの使用を開始)すると、基盤となるCLRプラットフォームとのやり取りをより頻繁に開始します。その時点で、それは本質的に新しい「言語」になり、「管理されていない」と「管理されていない」との間で考えを分ける必要があります。サイドと「管理対象」側。

C ++ / CLIはC ++のスーパーセットではありません。むしろ、追加されたサブセットです。例えば。 C ++ / CLIは多重継承をサポートしていません。

アンジェロ

Marcus Heegeの著書「Visual C ++プログラマー向けのエキスパートC ++ / CLI.NET」の3ページ目:

  

C ++ / CLIは、   から恩恵を受けるC ++言語   サービスの実装   CLIが提供しています。

さらに同じページをさらに下に:

  

C ++ / CLIはC ++言語のスーパーセットです。

彼の優れた本はこちらから無料で入手できます。

(大規模な)Qtライブラリ全体をC ++ / CLIとして minor の変更を加えてコンパイルできました(ほとんどがビルド環境ですが、Qtソースコードの1つのバグも修正されました)

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top