2

OK、私が開発しているアプリケーションは、DOS の C からさまざまな種類の C++ を経て、過去 16 年間ほぼ継続的に開発されてきましたが、現在は主に MFC と StingRay GUI およびその他のさまざまな SDK を備えた C++ に基づいています。

私はリリース ビルドに VS 2005 を使用していますが、GUI ビルドの多くにはまだ MSVC 6 を使用しています。これは、この環境では ClassWizard がその後の弱い同等のツールよりもはるかに高速であるためです。ClassWizard を使用して、独自のユーザー定義型のコードを自動的に生成していることに注意してください (カスタム DDXを参照)。多くのメンバー変数とメソッドを一度に追加するのが好きです。Visual Studio の新しいバージョンのように一度に 1 つずつ作成することは、大きな後退です。同時に、複数の IDE で作業するのも面倒です。

私の質問は 2 つの部分に分かれています。

  1. ClassWizard を VS 2005 または VS 2008 で動作させる方法はありますか?

  2. 私のような古い C++ ハックに同様のレベルの生産性を提供する代替または代替 IDE の低下はありますか?

4

5 に答える 5

3

興味のある方へのフォローです。ClassWizard は、Tarek Madkour [VC++ チーム] から、VS2010 で再導入される可能性があります。

Class Wizard を VS10 に追加することを検討しています。これにより、VC6 の場合と同様に、DDX/DDV 関数の作成がよりキーボード中心になることを願っています。機能を完成させるために克服しなければならないスケジュール上の課題がいくつかありますが、VS10 を出荷するときにそれが見られると楽観的です。

完全な議論については、ここをクリックしてください

編集: VS2010 のリリース ノートでは、MFC クラス ウィザードが復活したことが確認されています。一般に信じられていることとは反対に、MS の担当者はユーザーの声に耳を傾けます。

Visual Studio 2010 は、MFC クラス ウィザードの復活、ソース アウトラインを介した大きなソース ファイルの表示機能、現在の「ファイル内検索」メソッドの混乱なしに情報を見つけるための統合されたクイック検索、および簡単な操作を含む C++ IDE エクスペリエンスを提供します。新しい Managed Extensibility Framework (MEF) による拡張可能な IDE モデル。

于 2008-12-03T16:40:54.510 に答える
2

Shane に同意します。vs2008 の CW の代替案は驚くほど貧弱です。Microsoft でまだ MFC を使用している人がいるかどうか疑問に思います。一般的に afx/mfc の統合が不十分なため、見積もりを上げ始めました。完成していないだけで、そこにはかなりバグがあります。確かに手でコードを書くことができます。誰もそれが難しいと主張していませんが、真剣に、そのうなり声のコード、その 2010 年、このようなものを手で書くべきではありません。

于 2010-05-28T09:55:06.727 に答える
1

フォームのクリック コントロールを記述し、変数またはイベント ハンドラーを追加できます。VC6 ほどではありませんが、それでも十分です。DDX を手動で作成しても意味がありません。

于 2010-04-07T09:02:00.153 に答える
1

コード生成をまったく避け、お気に入りのエディターを使用して新しいコードを手動で作成することをお勧めします。私が正しく理解していれば、あなたはこの分野の専門家であり、手動で作成されたコードは、生成されたコードよりもはるかにクリーンでシンプルになることを知っているはずです。
さらに、コード ジェネレーターはコード レビューにとって悪夢であり、まったく変更してはならない無数の場所を変更し、意味のある変更に集中するのは非常に困難です。
私見では。

于 2008-09-29T07:17:48.920 に答える
1

また、必要な DDX/DDV (およびメッセージ処理) マクロ (およびメンバー変数) を手動でクラスに追加することをお勧めします。最初は、エントリを正確にどこにどのように書き込むべきかを見つけるのは少し難しいように思えますが、しばらくするとかなり簡単になります。VC6 プロジェクトを VS2005 に移植した後、私はそれを始めました。あなたが与えたのとまったく同じ理由で、ClassWizard の適切な代替品はありません。しかし、2 年経った今では、もうまったく懐かしくないと言えます。

于 2008-09-29T07:41:25.103 に答える