[改訂第4版]C++ポケットリファレンス (POCKET REFERENCE)

[改訂第4版]C++ポケットリファレンス (POCKET REFERENCE)

[改訂第4版]C++ポケットリファレンス (POCKET REFERENCE)

0.0 (0)

[改訂第4版]C++ポケットリファレンス (POCKET REFERENCE)

0.0 (0)

作品紹介・あらすじ

大好評のロングセラー『C++ポケットリファレンス』の改訂第4版。「逆引き形式で目的からすぐ探せる」「サンプルコードを見ながら具体的な実装のイメージがつかめる」という特徴で、困ったときにすぐ役立ちます。C++20に対応し、コンセプト、レンジライブラリ、数学定数、カレンダー機能といった新機能や、拡張されたconstexprの機能などを解説。もちろん、現場で使われているC++03からC++17にも対応しています。信頼と安心の1冊です。

はじめに
謝辞
本書の構成
本書の使い方

■CHAPTER 1 C++とは
C++の歴史と特徴
主な処理系


■CHAPTER 2 基本文法
プログラムの例
識別子
演算子
コメント

cv修飾子
型の別名宣言
型の自動推論と取得
構造化束縛(C++17)
キャスト
動的な生成と破棄
COLUMN new/deleteとメモリリーク
サイズとアライメント
COLUMN アライメントとは?
リテラル
COLUMN 生文字リテラルのデリミター
COLUMN nullptrの型
右辺値参照とムーブセマンティクス(C++11)
文(ステートメント)
スコープ
関数
COLUMN 可変長実引数について
クラス
メンバ変数/メンバ関数/メンバ型
継承
COLUMN 仮想関数と非仮想関数の違いと多態性
関数オブジェクト
オーバーロード
テンプレート
定数式(C++11)
ラムダ式(C++11)
COLUMN ラムダ式の書式の応用
プリプロセッサ
COLUMN 条件付き取り込みで使用される条件式
名前空間
属性(C++11)


■CHAPTER 3 エラーハンドリング
エラーハンドリングの概要
例外クラスを使い分ける
例外を送出しないことを明示する(C++11)
システムのエラーを扱う
例外を持ち運ぶ
関数の失敗を無効な値として表す
アサーションを行う
コンパイル時にアサーションを行う(C++11)
システムを終了させる

■CHAPTER 4 文字列
概要
文字列オブジェクトを構築する
basic_stringリテラルで構築する(C++14)
文字列オブジェクトの基本操作
文字列の長さを取得する
文字列を空にする
文字列が空かどうかを判定する
C言語インタフェースとやりとりする
文字列をイテレータを使用して操作する
文字列の一部を取得する
文字列を数値に変換する
数値を文字列に変換する
文字列を検索する
先頭・終端が特定の文字列であることを判定する
効率的な文字列検索アルゴリズムを使う
正規表現で検索する
正規表現で置換する
低いコストで文字列を受け取る
値を書式指定で文字列化する


■CHAPTER 5 入出力
概要
標準出力に書き込む
標準エラー出力に書き込む
標準入力から読み取る
出力の基本
入力の基本
1行を読み取る
ストリームのエラーを知る
入力の終わり(EOF)を判定する
ファイルを読み書きするストリームを作る
メモリ上で読み書きする文字列ストリームを作る
COLUMN 文字列ストリームのユニコード対応
読み書きする位置を移動する
ファイルの内容をすべて読み込む
自作の型をostreamで出力できるようにする
自作の型をistreamで入力できるようにする
パスを扱うオブジェクトを構築する
ファイルシステム関数のエラーを扱う
ファイルやディレクトリをコピーする
ファイルやディレクトリの名前を変更する
ファイルやディレクトリを削除する
ディレクトリを作成する
ディレクトリ内のファイルを列挙する
ファイル/ディレクトリが存在するか確認する
ファイルサイズを取得する
現在の作業ディレクトリを取得/変更する
相対パスを絶対パスに変換する
パスからファイル名を取得する
パスから拡張子を取得する
パスから拡張子を除いたファイル名を取得する


■CHAPTER 6 ユーティリティ
乱数を生成する
ポインタを自動的に解放させる(共有方式)
ポインタを自動的に解放させる(専有方式)
オブジェクトの生死を監視する
型の最大値を取得する
複数の値のうち、最も大きい値を取得する
複数の値のうち、最も小さい値を取得する
値を範囲内に丸める
2つの変数を入れ替える
絶対値を求める
浮動小数点数を近い整数に丸める
浮動小数点数の切り上げを行う
浮動小数点数の切り捨てを行う
三角関数(正弦/余弦)を扱う
平方根を求める
累乗を求める
指数関数と対数関数を計算する
実行時型情報を扱う
関数オブジェクトを変数に持つ
時間演算を行う
複素数を扱う
ペアを扱う
タプルを扱う
継承関係にない複数の型を、1つのオブジェクトに代入する(静的)
継承関係にない複数の型を、1つのオブジェクトに代入する(動的)
2つの数値の間の値を得る
ビット演算を行う


■CHAPTER 7 コンテナとアルゴリズム
コンテナとアルゴリズムの概要
各コンテナの紹介
COLUMN std::vectorについて
COLUMN コンテナの構築時にクラステンプレートの型推論を利用する(C++17)
イテレータの概要
レンジの概要(C++20)
コンテナオブジェクトを構築する
COLUMN コンテナアダプタで使用するコンテナ型
コンテナに要素を追加する
挿入イテレータを使用する
コンテナの要素を参照する
コンテナの要素数を得る
コンテナのサイズを変更する
コンテナを空にする
コンテナが空かどうか調べる
コンテナの要素すべてに対して指定した処理を行う
コンテナを指定した値で埋める
コンテナの特定要素を置き換える
コンテナの要素を逆順にする
シャッフルする
ソートする
指定した要素の数を数える
要素を検索する
コンテナの要素に変更を加えた結果を得る
コンテナの要素を削除する
重複した要素を取り除く
コンテナの要素が条件を満たすか確認する
コンテナの最大値/最小値を取得する
コンテナの要素を集計した結果を得る
集合演算を行う
順列を作成する
コンテナの先頭要素を指すポインタを取得する
vector/basic_stringのメモリ使用領域をあらかじめ確保する
COLUMN std::vector/std::basic_stringへの要素追加
vector/deque/basic_stringのメモリ使用領域を節約する(C++11)
COLUMN コンテナのメモリ確保戦略
連続した数値を出力するビューを得る
配列やコンテナの一部範囲を受け取る
範囲の特定要素を抜き出す
自分で定義した型を連想コンテナのキーにする
コンテナを併合する


■CHAPTER 8 スレッド
概要
スレッドを作成する
引数付きでスレッドを作成する
停止可能なスレッドを作成する
スレッドの終了を待機する
スレッドの終了を待機可能か判定する
スレッドを手放す
スレッドを識別する
現在のスレッドの処理を明け渡す
現在のスレッドをスリープする
並行実行可能なスレッド数を取得する
スレッドを排他制御する
読み込みが多い状況でスレッドを排他制御する
リソースのロックを管理する
複数のリソースをロックする
ロックせずに排他アクセスをする
COLUMN compare_exchange_strong()とcompare_exchange_weak()
COLUMN アトミック変数は正しく使用することが難しい
条件変数を使用する
スレッドをまたいで値や例外を受け渡す
非同期処理をする
スレッドローカル変数を使用する(C++11)
並列アルゴリズムを使用する(C++17)


■APPENDIX 付録A ライブラリ
■APPENDIX 付録B 言語拡張
■APPENDIX 付録C 開発環境

参考文献・URL
索引

感想・レビュー・書評

0.0

(Based on 0 reviews)

0%
0%
0%
0%
0%

関連する本