0

なぜ私はこれを行うことができます:

char sXSongs[20][30] = {"Song 1", "Song 2 (w/Blur)", "The End (It's Not Here Yet)"};
addAlbum(&list, "The Beatles", "Some Famous CD", 1960, sXSongs);

しかし、これではありません:

addAlbum(&list, "The Beatles", "Some Famous CD", 1960, {"Song 1", "Song 2 (w/Blur)", "The End (It's Not Here Yet)"});

関数呼び出し内で cstring の配列を初期化することは不可能ですか?

その他のちょっとした情報は次のとおりです。

album* list = NULL;
typedef struct album {
    char performer[20];
    char CDtitle[50];
    int year;
    char songs[20][30];
    struct album* prev;
    struct album* next;
} album;
4

2 に答える 2

1

いいえ。配列を宣言するときに配列を初期化することは可能ですが、それ以外の場合はできません。

于 2010-02-16T09:52:37.440 に答える
1

C++ でそのようにインスタンス化することはできません。

オンザフライで作成できる匿名型を使用する場合、C# で (ある程度) 可能です。

于 2010-02-16T09:52:58.360 に答える