ホーム目次前ページへ次ページへ索引

C++ プログラミングガイド Sun Microsystems

目次

 製品名の変更について

 はじめに

1.  Sun C++ コンパイラの紹介

C++ 言語
データの抽象化
オブジェクト指向の特徴
型検査
クラスとデータの抽象化
C との互換性

2.  プログラムの構成

ヘッダーファイル
言語に対する適合性のあるヘッダーファイル
べき等なヘッダーファイル
自己完結するヘッダーファイル
不要なヘッダーファイルのインクルード
インライン関数の定義
関数定義のインライン展開
関数定義取り込み型の構成
テンプレート定義
テンプレート定義取り込み型の構成
テンプレート定義分離型の構成

3.  プラグマ

プラグマの書式
プラグマ一覧
#pragma align
#pragma init
#pragma fini
#pragma ident
#pragma pack(n)
#pragma unknown_control_flow
#pragma weak
#pragma weak name
#pragma weak name1 = name2

4.  テンプレート

関数テンプレート
関数テンプレートの宣言
関数テンプレートの定義
関数テンプレートの使用
クラステンプレート
クラステンプレートの宣言
クラステンプレートの定義
クラステンプレートメンバーの定義
クラステンプレートの使用
テンプレートのインスタンス化
テンプレートの暗黙的インタンス化
全クラスインスタンス化
テンプレートの明示的インスタンス化
テンプレートの編成
デフォルトのテンプレートパラメータ
テンプレートの特殊化
テンプレートの特殊化宣言
テンプレートの特殊化定義
テンプレートの特殊化の使用とインスタンス化
部分特殊化
テンプレートの問題
非局所型名前の解決とインスタンス化
テンプレート引数としての局所型
テンプレート関数のフレンド宣言
テンプレート定義内での修飾名の使用
テンプレート宣言の入れ子

5.  例外処理

例外処理とは
例外処理キーワードの使用
try
catch
throw
例外ハンドラの実装
同期例外処理
非同期例外処理
制御の流れの管理
try ブロックとハンドラからの分岐
例外の入れ子
送出する例外の指定
実行時のエラーの指定
terminate() と unexpected() 関数の変更
set_terminate()
set_unexpected()
uncaught_exception() 関数の呼び出し
例外とハンドラの一致
例外におけるアクセス制御の検査
try ブロック内に関数を入れる
例外を無効にする
実行時関数と事前定義された例外の使用
シグナルによる例外と setjmp/longjmp の混在
例外を含む共有ライブラリの作成

6.  実行時の型識別

静的な型と動的な型
RTTI オプション
typeid 演算子
type_info クラス

7.  キャスト演算

新しいキャスト演算
const キャスト
解釈を変更するキャスト
静的キャスト
動的キャスト
階層の上位にキャストする
void* にキャストする
階層の下位または全体にキャストする

8.  パフォーマンス

一時オブジェクトの回避
インライン関数の使用
デフォルト演算子の使用
値クラスの使用
クラスを直接渡す
各種のプロセッサでクラスを直接渡す
メンバー変数のキャッシュ

9.  マルチスレッド化されたプログラム

マルチスレッドプログラムの構築
マルチスレッド対応コンパイルの確認
スレッドとシグナルに対する C++ サポートライブラリの使用
マルチスレッドプログラムでの例外の使用
スレッド間での C++ 標準ライブラリオブジェクトの共有

 索引


サン・マイクロシステムズ株式会社
Copyright information. All rights reserved.
ホーム   |   目次   |   前ページへ   |   次ページへ   |   索引