C++ ユーザーズガイド

第 1 章 C++ コンパイラの紹介

本章では、Sun(TM) C++ および C++ コンパイラの概要を説明しています。

標準の準拠

この C++ コンパイラ (CC) は、『ISO International Standard for C++, ISO IS 14882:1998, Programming Language - C++』に準拠しています。このリリースに含まれる README (最新情報) ファイルには、この標準と異なる仕様に関する記述が含まれています。

SPARC プラットフォームでは、このコンパイラは、UltraSPARC(TM) の実装と 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(TM) WorkShop(TM) や C コンパイラなどのサンの開発ツールと統合されています。Sun C++ コンパイラとその実行時ライブラリは、Sun Visual WorkShop(TM) C++ に含まれています。Sun Visual WorkShop C++ の構成要素を使用すれば、マルチプロセッサの Solaris(TM) 2.5.1、2.6、Solaris(TM) 7 オペレーティング環境でスレッドを使用したアプリケーションを開発できます。

リリース 5.0 の CC は、Solaris(TM) 2.5.1、2.6、Solaris(TM) 7 のいずれかのオペレーティング環境を実行する SPARC(TM) および x86 プラットフォームで使用できます。


注 -

機能が特定のオペレーティング環境やハードウェアプラットフォーム固有である場合は、その旨を明示します。しかし、コンパイラの機能性や動作性には、システム間での違いはほとんどありません。マルチプロセッサ機能は、SPARC プラットフォームの Solaris 2.5.1、2.6、Solaris 7 ソフトウェアにおける Sun WorkShop に含まれています。この機能には、Sun WorkShop ライセンスが必要です。


詳細は C++ README (最新情報) ファイルを参照してください。

READMEs ディレクトリ

READMEs ディレクトリには、新しい機能やソフトウェアの互換性の問題、既知の問題点、および、このマニュアルの印刷後に明らかになった情報などについて記述したファイル(README ファイルと呼びます) が含まれています。このファイルの場所は、ソフトウェアをインストールした場所によって異なります。

標準インストールでは、README ファイルは /opt/SUNWspro/READMEs/ja に あります。

README ファイルは、どのコンパイラでも -xhelp=readme コマンド行オプションで簡単に表示できます。たとえば CC -xhelp=readme と入力すると、C++ README ファイルが表示されます。

マニュアルページ

オンラインのマニュアルページ (man) では、コマンドや関数、サブルーチン、およびその機能に関する情報を簡単に参照できます。

標準のインストールを実行した場合、Sun WorkShop のマニュアルページは /opt/SUNWspro/man/ に置かれます。Sun WorkShop のマニュアルページを使用するには、MANPATH 環境変数にこのパスを追加してください。

マニュアルページを表示するには、次のように入力してください (topic には、参照したいコマンドやライブラリ関数の名前を指定)。


demo% man topic

C++ のマニュアルで参考情報としてマニュアルページ名を記載する場合は、名前とセクション番号が示されています。CC(1) は、man CC で表示されます。その他のセクションのマニュアルページ、たとえば、ieee_flags(3M) は、man コマンドに -s オプションを使用すると表示されます。


demo% man -s 3M ieee_flags

C++ 関連の全マニュアルページの一覧については、『C++ プログラミングガイド』を参照してください。

ライセンス

C++ コンパイラでは、ネットワークライセンスを使用します。これについては、『Sun WorkShop のインストールとライセンス』を参照してください。

ライセンスがあれば、コンパイラを起動できます。ライセンスがない場合は、ライセンスの要求が待ち行列に入れられ、ライセンスを入手してからコンパイラを使用できるようになります。同じマシン上で同じユーザーであれば、1 ライセンスで同時に何回でもコンパイルできます。

C++ と一緒にほかのユーティリティを実行する場合には、購入したパッケージによっては、複数のライセンスが必要になる場合があります。

C++ コンパイラの新機能

この C++ コンパイラには次の新しい機能があります。

C++ コンパイラパッケージには、次のものも含まれています。

C++ ユーティリティ

現在、ほとんどの C++ ユーティリティは従来の UNIX ツールに統合され、オペレーティングシステムに含まれています。

これら UNIX ツールについての詳細は、『プログラムのパフォーマンス解析』や関連するマニュアルページを参照してください。

各国語のサポート

本バージョンの C++ では、英語以外の言語を使用したアプリケーションの開発をサポートしています。対象としている言語は、ヨーロッパのほとんどの言語と日本語です。このため、アプリケーションをある言語から別の言語に簡単に置き換えることができます。この機能を国際化と呼びます。

通常 C++ コンパイラでは、次のように国際化を行なっています。

変数名は国際化できません。必ず英語の文字を使用してください。

アプリケーションをある国の言語から別の国の言語に変更するには、ロケールを設定します。言語の切り換えのサポートに関する情報については、オペレーティング環境のマニュアルを参照してください。