機能 |
解説 |
最新の ANSI/ISO テンプレートをサポート |
Borland C++ Compiler は、ANSI/ISO C++ の標準をサポートすることで、すぐれた移植性とプログラミングにおける柔軟性を提供しています。Borland C++ Compiler はクラステンプレート、関数テンプレート、typename、bool、mutable、explicit に加えて、以下のものをサポートしています。
- メンバーテンプレート関数およびクラス
- クラステンプレートの部分的特化
- テンプレートのテンプレートパラメータ(引数)
- フレンドテンプレート
- 個々のメンバーの明示的インスタンス化
- 関数の明示的特化が正しく処理される
- その他
|
コンパイラのコード生成を制御する #pragma のサポート |
#pragma option push、#pragma option pop などの #pragma 指令は、コンパイラのコード生成を細かく制御するために役立ちます。また、#pragma checkoption は、オプションの状態を確認したりデバッグするために役立ちます。
|
プログラミングによる最適化を実現する動的関数 |
仮想関数を速度かサイズのどちらで最適化するかを開発者がプログラミング的に決定できるよう、動的関数がサポートされました。動的関数は、仮想関数に似ていますが、派生したクラスのすべてにエントリを必要としない仕組みを提供しています。動的関数の定義がオブジェクトにない場合は、継承元のクラスをたどって呼び出すべき関数を調べます。
|
最新の ANSI/ISO 標準 C++ ライブラリ |
標準 C++ ライブラリは、ANSI/ISO で定義されたクラスや関数から構成される包括的なフレームワークです。Borland C++ Compiler の標準 C++ ライブラリ(STL)は、RogueWave からライセンスされた最新の実装であり、もっとも実用的で品質の高い ANSI/ISO の実装となっています。移植性や互換性を必要とする場合は、他のプラットフォームのためのライブラリを RogueWave から入手できます。ANSI 標準をサポートすることで、C++ 言語の完全性やサーバーコードの移植性を支援します。ANSI/ISO 標準 C++ ライブラリには、以下のものが含まれます。
- 標準テンプレートライブラリ(STL)として知られているデータ構造やアルゴリズムの処理
- IO ストリーム
- ロケ-ル
- テンプレート化された文字列クラス
- テンプレート化された複素数クラス
- 実行環境に対応して統一的なフレームワークを提供するための、numeric_limits と名付けられたテンプレートクラス
- メモリ管理
- 言語サポート
- 例外処理
- 数値配列を扱うために最適化された valarray クラス
|
テンプレートにおけるコード生成の効率化 |
Borland C++ Compiler は、テンプレートにおけるコード生成を効率化し、大量にテンプレートを使う場合に、より小さな .OBJ、.LIB、.EXE ファイルを作成できるようになりました。開発者は、C++ アプリケーションにおけるサイズと速度を大幅に改善できます。
|
例外的な例外処理 |
ANSI 標準の try/catch 構造や新しくサポートされた try/finally 構造を、C と C++ の両方で利用できるため、信頼性の高いアプリケーションを開発できます。また、開発者は、アプリケーションのメモリリークを防ぎ、例外をプログラミングによって回復セクションに移行することができ、エラー処理を改善できます。
|
Visual C++ との互換性強化 |
既存の C++ 資産の再利用を促進するため、Borland C++ Compiler 5.5 は Visual C++ のソースコードやヘッダファイルのコンパイル機能を強化しています。これには、Visual C++ 独自の言語拡張や #pragma 指令、例外が含まれます。
|
拡張された実行時型情報 |
Borland C++ Compiler 5.5 は、不連続な仮想テーブルを含むさまざまな型情報をサポートしています。
|