Cprogramming.com のランダムなページを調べていて、コンストラクターとデストラクタのチュートリアル/サンプル ページに気付きました。彼らは、コンストラクターを定義する次の方法を使用しました。
class String
{
private:
char *str;
int size;
public:
String() : str(NULL), size(0) { } // <- This statement
String(int size) : str(NULL), size(size) { // <- And this one
str = new char[size];
}
}
this
私は、マジックポインターを使用して古き良きコンストラクターの定義を使用してきました。
String() {
this->str = NULL;
this->size = 0;
}
String(int size) {
this->size = size;
this->str = new char[size];
}
明らかに小さいコード (行数が少ない) のほかに、最初の宣言に追加の利点はありますか?
PS:最後に C++ で何かを書いてからかなりの年月が経ちました。