• ベストアンサー

MFCとC++/CLIとの比較

MFCを使ってプログラミングを今までやっていましたが、C++/CLIへ移行しようと思っています。 ただ、MFCとC++/CLIではプログラミングの自由度に差はあるでしょうか? ここでの自由度とは、思い通りの処理・機能を実現し易いかことです。 処理・機能に関しては具体的にはまだ決まってないので、一般的な話で構いません。 あと、主観で構わないのでMFCとC++/CLIとどちらが好みかも教えてもらえると幸いです。理由も聞かせてもらえるとベストです。 よろしくお願い致します。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.3

自由度という部分だけをとれば、CLIで行き詰っても、ネイティブコードを呼び出せばいいだけですから、差はありません。 問題なのは、あまりにもネイテイブコードを呼び出す必要が多すぎて、うんざりすることです。 ネイテイブコードを呼び出した場合は、MFCが使えないので、APIということになり、「ありゃ、パラメータは何だったっけ」ということになります。 多くの人が指摘することですが、CLIをやるなら、VBかC#で、許される許容度の中で工夫して、コーディングしたほうがいいと思います。 よくよくのことがないかぎり、それでニーズは満たせます。 C++に関するサイトはたくさんありますが、CLIに好意的な意見はほとんどありません。 SDKやMFCをやっていると、CLIって、「かゆい所に手が届く」感じで、なんだか幼稚に見えるんですよ。 そんなこともないんですけれどね。 もし、すでにC++/CLIに触っていたら、なんとなくニュアンスは分かると思います。 ただ、CLIがどうかということは別として、MFCの将来は、あまり明るくないかもしれません。

その他の回答 (3)

回答No.4

ところで、MFCは温存したまま/clrオプションつけてre-buildすれば C++/CLIのもとでMFCが動きますけど。

回答No.2

僕ならUI回りをC#、既存資産はC++のまま。 その両者をC++/CLIで仲介させます。

回答No.1

MFCはライブラリ、C++/CLIは言語です。 比べようがありません。

oeilvert
質問者

お礼

お返事ありがとうございます。 質問の仕方がまずかったですね。 例えば、C++とMFCという組み合わせとVisualBasicと比較した場合、VisualBasicの方がより手軽にプログラムを組むことができると思うのですが、より細やかな処理となるとC++とMFCの組合せと比較すると融通が聞かない部分があると思うんです。 なので、C++/CLIという言語に移行した際にこういった不便な部分もでてくるのかな?と思った次第です。

関連するQ&A

専門家に質問してみよう