C++Builder2007 の機能一覧

第5回デベロッパーキャンプも無事終了し C++Builder2007 の詳細が公開されました。製品紹介のページに機能一覧の PDF が公開されてますので、気になった部分を以下に挙げていきます。

  • Enhanced! CodeGear C++ Compiler 5.9 (bcc32)
  • Enhanced! ANSI/ISO C++ 標準への準拠
  • Enhanced! Boost およびDinkumware STL のサポート

Boost の公式対応が謳われているのは嬉しい話ですね…。これまで真面目に使ってませんでしたがそろそろ本格的に使ってみようかと思います。また、コンパイラの標準への準拠度向上により、Boost の今後のリリースも通り易くなるというのを期待しています。(自分自身はコンパイラの準拠度の向上を体感できるほど C++ に精通してません…。orz)

  • Enhanced! メモリ管理の柔軟性と解決を向上させたリンカエラーハンドリング

さりげなく重要な点が挙げられています。BDS2006 では「一行もいじってないのにあるタイミングでリンカが通らなくなる」とか「const で宣言された定数が実行時に化ける」など、Quality Central で報告しようにも全く再現性のない問題に悩まされていたので、このあたりが改善されている事を切に願います。

これもさりげなく重要ですね…。その昔、DirectShow が DirectX から切り離されて PlatformSDK に組み込まれたと聞いた時に、"Windows Server 2003 SP1 Platform SDK" をインストールし、Platform SDK ごと乗り換えようと画策したことがありました。が、BDS2006 のインクルードパスをこちらに書き換えて強引にビルドしようとしたらコンパイルエラーの嵐…。
BDS 付属の Platform SDK のヘッダと差分を取ってみたところ、あちこちに当たっていた Borland 用のパッチを目の当たりにしてしまいました。orz 結局当時は自力での Platform SDK の乗り換えはあきらめた訳ですが、それが遂に標準で入るようになったのなら嬉しい話です。(ついでに DirectShow も入っていると嬉しいですが…まあそこまでは期待してませんです)

  • New! .NET API アクセスのためのNET 2.0 ヘッダファイル

これは一体何なんでしょう…。C++ から .NET Framework 2.0 のライブラリが呼び出せるということでしょうか…?(C++/CLI でもないのに?)

  • Updated! Dinkumware STL v5.01

このあたりが一新されたことで 以前報告した locale 周りの問題が解決されてますように…。

  • Enhanced! IDE 内でのビルド時間を最大5 倍にスピードアップ
  • New! バッチコンパイル ? プロジェクト内のすべてのファイルをすばやくコンパイルしパフォーマンスを向上

ビルドが速くなるのは実にいいことです!

夜中の自動ビルドとかしている人にはありがたい機能ですね…。(もっとも一人開発だとほとんど使いませんが…)

  • Enhanced! 複数のビルドに対するすべてのコンパイラ/リンカオプション設定を柔軟に編成できるビルド設定
  • New! ビルド設定オプションセットに名前をつけて保存し任意のプロジェクトに適用可能

こちらスクリーンショットを見ると、プロジェクトマネージャに Build Configuration の項目がぶら下がっているのが新しいです。(これは VisualStudio2005 にもなかったはず)
ここにあると全体の見通しがよいので嬉しいですね…。6 の頃はプロジェクトマネージャがデフォルトで非表示になっていた事を考えると、隔世の感があります(^^;)。

  • New! プロジェクトマネージャでの複数ファイルの選択

さりげなくありがたいです!(笑)

  • Enhanced! IDE 全般の大幅なパフォーマンス向上

これにもかなり期待してます。マウスカーソルをうっかりコードエディタの変数名の上に重ねると勝手に宣言部分を探しにいって HDD をガリガリ言わせつつ、エディタがしばらく固まる…という現象(おそらく仕様)に何らかの手が入っていると信じたいです。最も、C++Builder6 の頃からこの現象はあったので、そういうものだと半分諦めていましたが、BDS2006 では画面の更新中(エディタが真っ白になってそれまで編集していたソースが読めない状態)に固まるようになり、自分自身が思考停止に陥ってしまってました…。

  • QualityCentral の統合 CodeGear にバグレポートや機能要求の投稿が可能

BDS2006 ではメニューから Quality Central の専用クライアントが立ち上がるようになってましたが、Web からも投稿できると知った後はもっぱらそっちばかりを使っていました。Web ベースで別に不便は感じてませんでしたが、どう統合されているんでしょう…。

  • Enhanced! コードおよびパラメータ補完機能のパフォーマンス改善強化したCodeInsight で、コード入力中にメンバーリストやパラメータヒントを表示

BDS2006 では補完時に数秒間固まってしまうため VisualStudio2005 に一歩及ばずな印象がありましたが、改善に期待しています…。

  • New! Together によるコードの可視化 ? いつでもソースコードからUMLRモデルビューを表示可能

UML 対応は結局 C++ ソースを解析してクラス図を生成させるだけのようですね。もともとそれが目的でEnterprise Architect を買っていたので、UML クラス図とソースとの同期にはあまり期待していない*1自分にはこれだけで十分です。

CPPUnit ではなく Delphi 用の DUnit が C++ に対応したんでしょうか…? うぅむ謎や…。

*1:たぶん便利さを知らないだけですが…。