0

申し訳ありませんが、私は C++ の初心者です。私はいくつかのコードを調べていて、次のコード行に出くわしました:

   string cmd(*iter);

明らかに変数「cmd」は文字列として定義されていますが、私が理解していない部分は括弧内のビットです: (*iter)

「*iter」がポインターであることは知っていますが、変数宣言の後に括弧が続くとはどういう意味ですか?

ばかげた質問で申し訳ありません。

4

4 に答える 4

3

を介して文字列 cmd を初期化します*iter

注: iter は必ずしもポインターである必要はなく、イテレーターであってもかまいません。

イテレータの*演算子を確認する必要があります。

于 2013-06-08T04:47:39.067 に答える
1

この種のパラメーターを受け入れる文字列クラスのコンストラクターを呼び出しています。同じクラスが異なるコンストラクターを持つことができます。

于 2013-06-08T04:45:38.957 に答える
1

stringが指す値でのコンストラクターを呼び出しますiter。このコード行は、呼び出された新しいstringインスタンスを作成しcmd、反復子の値に初期化するだけです。

于 2013-06-08T04:45:58.787 に答える