0

その行が何を意味するのか本当に理解していないので、それよりも良いタイトルを考えることはできません。つまり、関数内のwhileループにあり、ここでも次のようになります。

  Object* foo(0);

それがポインタ変数の宣言である場合、それは世界で何(0)ですか?実際には、foo次のように、数行後に変数として使用されます。foo=new Something;

4

3 に答える 3

7

へのポインタを初期化していますNULL

に相当:

Object* foo = NULL;

また

Object* foo = 0; // since NULL is defined as 0
于 2012-05-08T22:17:32.073 に答える
3

ポインタを宣言し、Object0(NULL)で初期化します。

于 2012-05-08T22:18:08.360 に答える
2

これは、C++ が C でない場所の 1 つです。C++ では、

int i(47);

(少なくともこのコンテキストでは) 以下と同等です。

int i = 47;

厳密にはiof classというオブジェクトintを構築し、コンストラクタを呼び出してオブジェクトを初期化します。そう、

Object * foo(0);

とまったく同じです

Object * foo = 0;

fooクラス「pointer-to-Object」(ここでObjectは、 は型名であるため、実際にはオブジェクトではなくクラスです) と呼ばれるオブジェクトを構築し、コンストラクターを使用して新しいオブジェクトを初期化します。

//B

于 2012-05-08T23:59:58.513 に答える