期間の終わりには、上記の教示の知識を総括します
第IX章
9.1 クラス宣言
1. 同時に宣言するクラス宣言のメンバーは、メンバーのプロパティにアクセスします。
2.C ++ 構造とクラスの唯一の違い:構造体へのメンバーのアクセスプロパティのデフォルトパブリック、クラスへのアクセスプロパティのデフォルト値へのメンバーのプライベート。
3. 一般的にはオープンに設計の外側部分を持つことになり、保護またはプライベートとして、あなたは、デザインの外部メンバーを持っていません。
4. A と同じクラスのすべてのデータメンバのクラスのメンバ関数は、無制限のアクセスする能力を持っています。
9.2 基本的な空間オブジェクト
5. オブジェクトに割り当てられたオブジェクトのメモリ空間を作成する手段。
6. 私たちは、宇宙の基本的なスペースと呼ばれるオブジェクトの非静的データメンバの合計は、オブジェクトによって占有されます。
9.3 自己表現のオブジェクト
7.thisロックされているポイントを変更することはできません。
8. constメンバ関数は、クラスのメンバー、そのようなパラメータ定数のconstポインタ(現在のオブジェクトの陰関数の一形態であるこのCONST CONST *)、それだけで読み取ることができるが、インビボでのこのオブジェクト関数の特性のいずれかを変更することはできません
9. constオブジェクトはconstメンバ関数を呼び出すことができます。
10.クラスは、constメンバ関数が有益であるように設計されているすべてのメンバ関数のうち、オブジェクトの属性を変更しません。
9.5 テンプレートクラスとクラステンプレート
ソースコードレベルで、及び保留データ操作機能が記載されているタイプを決定 - 11.関数テンプレートであります
2次元ベクトルのテンプレートの例を見てください:
テンプレート<型名TYPE>データ型が決定され、又はされるテンプレートクラス宣言クラスVEC2 // TYPE データ型の形式で
クラス宣言で12テンプレートのメンバ関数は、インビトロ書き込み時のフォーマットについて説明します。
テンプレート<型名TYPE>テンプレートデータタイプを示すTYPE表現「テンプレート名<タイプ>」テンプレートの完全なクラス名(フォームデータ型クラス名を持ちます)
章Xコンストラクタと代入演算子
当該機能を破壊し、作成の対象とC ++クラスの1コンストラクタとデストラクタ。
2.(左値オブジェクト)に関与代入演算子の左オペランドはすでに既存のオブジェクトであるが、唯一のデータメンバを操作代入演算子を変更することができるように割り当て動作は、新たなオブジェクトを作成できません実行します。
10.1コンストラクタ
3.コンストラクタは、処理対象空間を完了し、データ構造体などを初期化するように構成される。
4.コンストラクタは、オブジェクトを作成することはできません。
5.任意のタイプは、少なくとも2つのコンストラクタ(デフォルトコンストラクタとデフォルトコピーコンストラクタ)を持っています
6.デフォルトコンストラクタは、コンストラクタの引数を必要としません。宣言すると、システムがクラスのデフォルトコンストラクタを提供するかどうかのクラスは、任意のコンストラクタを定義していません。
7.変換コンストラクタ:引数を持つコンストラクタ(あなたは暗黙的な変換やキャストのデータ型を実装するためにそれを使用することができますので、コンストラクタは、変換と呼ばれている)は、(私はそれを理解していない何を意味するのかわかりません)
8.コンストラクタの使用
(1)オブジェクトの配列を作成します
配列内の要素の数として定数が存在しなければならないときにオブジェクトの配列を作成します。配列の各要素を作成するとするとき、コンストラクタやコピーコンストラクタを呼び出す必要があります。
フォーマット:オブジェクト・クラス名配列名[要素数] = {コンストラクタ関数名(引数リスト)}。
(2)動的オブジェクトまたはオブジェクトの動的配列を作成します
C ++ newとdelete演算子は、強力な機能を持っています。オペレータとの新しいスタックオブジェクトを作成する場合、オペレータは、呼び出し元クラスのコンストラクタやコピーコンストラクタに対応する操作機能を有します。
オブジェクトヒープ(オブジェクトのヒープ配列)を作成するための新たなオペレータの最初のアドレスの後に、連続空間ダウンヒープから「カット」の復帰を成功。
記録のアドレス値へのポインタを持つプログラムは、オペレーティング・エレメントアレイスタックオブジェクトまたはスタック、スタックメモリリソースへの容易なアクセスを用いる塗布後に放出されます。新しい操作が失敗した場合は、NULLポインタがNULLで返します。
動的配列の各要素を作成するときには、コンストラクタを呼び出す必要があります。
10.2デストラクタ
9. Aのデストラクタなし戻り値の型、パラメータなしとオーバーロードできません。一般的に、明示的にデストラクタを呼び出すべきではありません(機能別のパラメータテーブルを使用して、通常の過負荷が過負荷になっているが、彼はいないパラメータので、オーバーロードすることはできません)。
10.クラスの宣言時、システムが設計されていない場合、デストラクタは、デフォルトのクラスのデストラクタを提供します。唯一のクリーンアップの基本的なデータ・スペースのデフォルトのデストラクタシステム。
資源を持つオブジェクト場合は、リソースをもたらしたクリーンアップオブジェクトのデストラクタを定義する必要があります。