C++ ユーザーズガイド |
第 1 章
C++ コンパイラの紹介
本章では、SunTM C++ および C++ コンパイラの概要を説明しています。
標準の準拠
この C++ コンパイラ (
CC
) は、『ISO International Standard for C++, ISO IS 14882:1998, Programming Language - C++』に準拠しています。このリリースに含まれるREADME
(最新情報) ファイルには、この標準と異なる仕様に関する記述が含まれています。SPARCTM プラットフォームでは、このコンパイラは、UltraSPARCTM の実装と SPARC V8 と SPARC V9 の「最適化活用」機能をサポートします。これらの機能は、Prentice-Hall によって SPARC International のために出版された SPARC アーキテクチャマニュアル(トッパン刊) の バージョン 8 と SPARC Architecture Manual Version (英語版のみ) のバージョン 9 (ISBN 0-13-099227-5) に定義されています。
このマニュアルでは、「標準」は、上記の標準の各バージョンに準拠していることを意味します。「非標準」や「拡張」は、これらの標準のバージョンに準拠しない機能のことを指します。
これらの標準は、それぞれの標準を規定する組織によって改定されることがあります。したがって、コンパイラが準拠するバージョンの標準が改定されたり、まったく書き換えられた場合は、機能によっては、Sun C++ コンパイラの将来のリリースで前のリリースと互換性がなくなる場合があります。
オペレーティング環境
C++ コンパイラ (
CC
) は、Sun WorkShopTM や C コンパイラなどのサンの開発ツールと統合されています。Sun C++ コンパイラとその実行時ライブラリは、Sun Visual WorkShopTM C++ に含まれています。Sun Visual WorkShop C++ の構成要素を使用すれば、マルチプロセッサの SolarisTM 2.6、Solaris 7、Solaris 8 オペレーティング環境でスレッドを使用したアプリケーションを開発できます。Sun WorkShop 6 C++ コンパイラは、Solaris 2.6、Solaris 7、Solaris 8 のいずれかのオペレーティング環境を実行する SPARC および IA プラットフォームで使用できます。
注 - 機能が特定のオペレーティング環境やハードウェアプラットフォーム固有である場合は、その旨を明示します。しかし、コンパイラの機能性や動作性には、システム間での違いはほとんどありません。マルチプロセッサ機能は、SPARC プラットフォームの Solaris 2.6、Solaris 7、Solaris 8 ソフトウェアにおける Sun WorkShop に含まれています。この機能には、Sun WorkShop ライセンスが必要です。
詳細は C++ の
README
ファイルを参照してください。
READMEs
ディレクトリ
READMEs
ディレクトリには、新しい機能やソフトウェアの互換性の問題、既知の問題点、および、このマニュアルの印刷後に明らかになった情報などについて記述したファイル (README
ファイルと呼びます) が含まれています。標準インストールでは、README
ファイルは/opt/SUNWspro/READMEs/ja
にあります。
README
ファイルは、どのコンパイラでも-xhelp=readme
コマンド行オプションで簡単に表示できます。たとえばCC
-xhelp=readme
と入力すると、C++ のREADME
ファイルが表示されます。Netscape Communicator 4.0 (または、互換バージョン) ブラウザで HTML 版の
README
を表示するには、次のファイルを開きます。
/opt/SUNWspro/docs/ja/index.html
Sun WorkShop ソフトウェアが
/opt
ディレクトリにインストールされていない場合、システムのどこにインストールされているのかをシステム管理者に尋ねてください。ブラウザは SunWorkShop 6 HTML 文書の一覧を表示します。README
を開くには、一覧の上の対応するタイトルをクリックします。マニュアルページ
オンラインのマニュアルページ (
man
) では、コマンドや関数、サブルーチン、およびその機能に関する情報を簡単に参照できます。マニュアルページを表示するには、次のように入力してください (topic には、参照したいコマンドやライブラリ関数の名前を指定)。
example%man
topicC++ のマニュアルで参考情報としてマニュアルページ名を記載する場合は、名前とセクション番号が示されています。
CC(1)
は、man CC
で表示されます。その他のセクションのマニュアルページ、たとえば、ieee_flags(3M)
は、man
コマンドに-s
オプションを使用すると表示されます。
example%man -s 3M ieee_flags
ライセンス
C++ コンパイラでは、ネットワークライセンスを使用します。これについては、『Sun WorkShop のインストールとライセンス』を参照してください。
ライセンスがあれば、コンパイラを起動できます。ライセンスがない場合は、ライセンスの要求が待ち行列に入れられ、ライセンスを入手してからコンパイラを使用できるようになります。同じマシン上で同じユーザーであれば、1 ライセンスで同時に何回でもコンパイルできます。
C++ と一緒にほかのユーティリティを実行する場合には、購入したパッケージによっては、複数のライセンスが必要になる場合があります。
C++ コンパイラの新機能
この Sun Workshop 6 C++ コンパイラには次の新しい機能があります。
C++ コンパイラのバージョン 5.0 で導入された機能は次のとおりです。
- 次の C++ ISO 標準の実装
- C++ 4.0、4.0.1、4.1、4.2 との互換性
- Sun WorkShop Memory Monitor によるガベージコレクションとメモリーリークの検出
- Solaris 7 および Solaris 8 オペレーティング環境での SPARC V9 サポート
- ISO C++ へのスムーズな移行に役立つバイナリおよびソース互換機能
- マルチスレッドに対して安全な C++ 標準ライブラリ
C++ コンパイラパッケージには、次のものも含まれています。
- オンラインの
README
ファイル
新たに追加された機能、変更された機能、最新のソフトウェア、マニュアルの修正点、マニュアルの出版後に判明した情報が掲載されています。- マニュアルページ
ユーザーコマンドやライブラリ関数について簡潔に説明しています。- C++ の名前を復号化するツール群 (
dem
およびc++filt
)Tools.h++
クラスライブラリ
プログラミングを単純化できます。C++ ユーティリティ
現在、ほとんどの C++ ユーティリティは従来の UNIX ツールに統合され、オペレーティングシステムに含まれています。
lex
-- テキストの単純な字句解析に使用するプログラムを生成する。yacc
-- 構文に応じて入力ストリームを解析するための C 関数を生成する。prof
-- プログラム内のモジュールの実行プロファイルを作成する。gprof
-- プログラムの実行時パフォーマンスについての手続き単位のプロファイル。tcov -
- プログラムの実行時パフォーマンスについての文単位のプロファイルこれら UNIX ツールについての詳細は、『プログラムのパフォーマンス解析』や関連するマニュアルページを参照してください。
各国語のサポート
本バージョンの C++ では、英語以外の言語を使用したアプリケーションの開発をサポートしています。対象としている言語は、ヨーロッパのほとんどの言語と日本語です。このため、アプリケーションをある言語から別の言語に簡単に置き換えることができます。この機能を国際化と呼びます。
通常 C++ コンパイラでは、次のように国際化を行なっています。
- どの国のキーボードから入力された ASCII 文字でも認識する (つまりキーボードに依存せず、8 ビット透過となっています)
- メッセージによっては現地語で出力できるものもある
- 注釈、文字列、データに、現地語の文字を使用できる
変数名は国際化できません。必ず英語の文字を使用してください。
アプリケーションをある国の言語から別の国の言語に変更するには、ロケールを設定します。言語の切り換えのサポートに関する情報については、オペレーティング環境のマニュアルを参照してください。
サン・マイクロシステムズ株式会社 Copyright information. All rights reserved. |
ホーム | 目次 | 前ページへ | 次ページへ | 索引 |