C++ Boost

Boost.Python

Definitions


arity: 関数やメンバ関数が受け取る引数の項目数。 例外としてその他に明記すべきは、メンバ関数の隠れた"this" 引数は arity としてはカウントされない。

ntbs: ヌル終端文字列 (Null-Terminated Byte String) あるいは、`C'-文字列。 C++ 文字列リテラルは ntbs である。 ntbs は null であってはならない。

raise: Python での例外は "raised" されるもので、C++ の "thrown" されるではない。 このドキュメントでは、Python 例外を C++ コードの文脈中で "raised" と呼ぶことがある。 それは、対応する Python 例外が Python/'C' API を設定すると供に throw_error_already_set() が呼び出されるからである。

POD: C++ 標準の技術用語。旧式のプレーンなデータ型 "Plain Ol'Data" の略。
POD 構造体は aggregate (寄せ集め) クラスである。 そのメンバへのポインタを示す非スタティックデータ変数があってはいけない。 POD でない構造体、共用体 (あるいはそれらの配列)、参照型もあってはいけない。 それに、ユーザ定義コピーをアサインするオペレータやユーザ定義デストラクタも持てない。
同様に、POD 共用体は aggregate 共用体である。 そのメンバへのポインタを示す非スタティックデータ変数があってはいけない。 POD でない構造体、共用体 (あるいはそれらの配列)、参照型もあってはいけない。 それに、ユーザ定義コピーをアサインするオペレータやユーザ定義デストラクタも持てない。 POD クラスは POD-構造体またはPOD-共用体のうち何れかのクラスである。
aggregate とは配列、またはクラス (9 節) であり、ユーザ定義コンストラクタ(12.1 節)、 private や protected な非スタティックデータ変数 (11 節)、 基底クラス (10 節)、仮想関数 (10.3 節)があってはいけない。

ODR: 一意定義規則 "One Definition Rule"。 C++ プログラム中のいかなる実在も、プログラムを構成するすべてのコンパイル単位 (オブジェクトファイル) 中で同じ定義をもたなければならない、という意味。


Revised 03 October, 2002

© Copyright Dave Abrahams 2002. All Rights Reserved.