BohYoh.comトップページへ

新版明解C++中級編

本書の概略 はじめに 目 次 本 文 ダウンロード 発行日・履歴 著書のページ


第1章 クラスの基本

1-1 クラスによるカプセル化
クラスによるカプセル化
コンストラクタとメンバ関数
メッセージ
ヘッダとソースの分離
thisポインタ
constメンバ関数
コンストラクタ初期化子
1-2 日付クラス
静的メンバ
デフォルトコンストラクタ
変換コンストラクタ
コピーコンストラクタ
変換関数
演算子の多重定義
フレンド関数
1-3 整数配列クラス
整数配列クラス
明示的コンストラクタ
コピーコンストラクタの多重定義
デストラクタ
代入演算子の多重定義
添字演算子の多重定義
まとめ

第2章 整数型とビット演算

2-1 整数の内部とビット演算
整数の内部
ビット単位の論理演算
シフト演算
整数型のビット数
2-2 符号付き整数と符号無し整数
通常の算術変換
符号付き整数と符号無し整数間の型変換
2の補数表現での符号付き整数から符号無し整数への型変換
型変換の規則
2-3 ビットベクトルによる集合クラス
集合と要素
部分集合と真部分集合
集合の演算
ビットベクトルによる集合
まとめ

第3章 関数へのポインタ

3-1 関数へのポインタと動的な関数呼出し
条件によって動作を変える関数
関数へのポインタ
九九の加算と乗算
atexit:プログラム終了時に呼び出される関数の登録
3-2 関数へのポインタの配列
メニュードリブンプログラム
関数へのポインタの配列
3-3 汎用ユーティリティ関数 bsearch関数:ソート済み配列からの探索
qsort関数:配列のソート
3-4 汎用ユーティリティ関数の作成
線形探索関数
2分探索関数
改良版2分探索関数
クイックソート
3-5 メンバへのポインタ
メンバ関数へのポインタ
データメンバへのポインタ
まとめ

第4章 継 承

4-1 派生と継承
会員クラスの実現
優待会員クラスの実現
派生と継承
派生の形態
基底クラス部分オブジェクトとコンストラクタ初期化子
継承とデフォルトコンストラクタ
派生クラスオブジェクトの初期化
コピーコンストラクタとデストラクタと代入演算子
継承と差分プログラミング
4-2 is-Aの関係
is-Aの関係
汎化と特化
派生とポインタ/参照
4-3 private派生とアクセス権の調整 private派生による公開メンバ関数の制限
同一名メンバ関数の再定義 using宣言によるアクセス権の調整
まとめ

第5章 仮想関数と多相性

5-1 仮想関数と多相性
会員情報の表示関数
メンバ関数の隠蔽
静的な型
仮想関数
多相的クラスと動的な型
多相性とオブジェクト指向プログラミング
動的結合とオーバライド
仮想関数テーブル
仮想デストラクタ
5-2 実行時型情報と動的キャスト
実行時型情報
type_infoクラス
動的キャスト
ダウンキャスト
まとめ

第6章 抽象クラス

6-1 抽象クラス
図形クラスの設計
純粋仮想関数
抽象クラス
6-2 純粋仮想関数の設計
図形クラス群の改良
まとめ

第7章 多重継承

7-1 多重継承
多重継承
図形クラスと2次元クラス
7-2 仮想派生
仮想派生と仮想基底クラス
仮想派生を行ったクラス型オブジェクトの初期化
仮想基底クラスをもつ簡易配列クラス
仮想基底クラスの実現
まとめ

第8章 例外処理

8-1 例外処理の基本
エラーに対する対処
例外処理
例外の捕捉
例外の送出
例外を送出する整数配列クラス
例外指定
8-2 例外の再送出
例外の再送出
8-3 例外クラスの階層化
算術演算の例外
例外クラスの階層化
多相的クラスによる例外クラスの階層化
8-4 例外処理のためのライブラリ
例外処理クラス
標準例外
論理エラー
実行時エラー
まとめ

第9章 クラステンプレート

9-1 クラステンプレートとは
二値クラス
クラステンプレート
9-2 配列クラステンプレート
配列クラステンプレート
特殊化
非型のテンプレート仮引数
インクルードモデル
9-3 スタッククラステンプレート
スタックとは
スタックの実現
利用例
9-4 抽象クラステンプレート
抽象クラステンプレート
まとめ

第10章 ベクトルライブラリ

10-1 ベクトルvector<>の基本
コンテナとvector
vector<>の利用例
pop_back, front, backによる要素のアクセス
atによる要素のアクセス
代入演算子とassign関数
clear, swapによるベクトルの操作
等価演算子と関係演算子
関数テンプレートによるアクセス
ベクトルによる2次元配列
10-2 反復子とアルゴリズム
ポインタと反復子
前進反復子と逆進反復子
反復子を受け取る関数テンプレート
反復子の種類
ベクトルのシャッフルとソート
for_eachによる走査とファンクタの適用
ファンクタの明示的な特殊化
アルゴリズムの適用 まとめ

第11章 文字列ライブラリ

11-1 文字列クラスstring
stringクラス
stringの特徴
コンストラクタによる文字列の生成
文字列の連結
コンテナとしての文字列
C言語文字列との相互変換
文字列の読込み
等価性と大小関係を判定する演算子とcompare
添字による走査と反復子による走査
関数テンプレートによる文字列処理
文字列の探索
文字列の探索と置換
11-2 文字列の配列
文字列の配列
C言語形式の文字列の配列の変換
まとめ

第12章 ストリームへの入出力

12-1 標準ストリーム
標準ストリーム
リダイレクト
12-2 ファイルストリームの基本
ファイルストリーム
ファイルのオープン
ファイルのクローズ
ファイルの存在の確認
ファイルストリームに対する読み書き
前回実行時の情報を取得
12-3 ストリームライブラリ
ストリームライブラリの構成
ios_baseクラス
操作子
テキストモードでの実数値の読み書き
バイナリモードでの実数値の読み書き
ファイルのダンプ
まとめ
参考文献
索 引
謝辞
著者紹介



本書の概略 はじめに 目 次 本 文 ダウンロード 発行日・履歴 著書のページ