-1

私はこのような機能を持っています

typedef vector<vector<string> > vecArray;
vecArray dul();

vecArray dul() {
    vecArray arr = {
                    { "a", "b", "c" },
                    { "a", "b", "c" },
                    { "a", "v", "d" }
                    };
    return arr;
}

C++ 関数で次のような文字列を返したい

{
{"ffsff","aaaasda","ddaddd"},
{"sfsasda","sdadsfd","asasaad"},
{"adacv","fasfaa","asa","aba"}
}
4

1 に答える 1

1

この機能は C++11 でのみ使用できるため、初期化子リストを使用してベクターを作成することはできません。ただし、2D 配列を使用してベクトルを簡単に作成できます。

vecArray dul() {
    string arrTemp [3][3] = //create 2D array of strings
        {
            { "a", "b", "c" },
            { "a", "b", "c" },
            { "a", "v", "d" }
        };

    vecArray arr; //here's our vector

    //for 3 arrays, push each onto back of vector using the iterator constructor
    for (vecArray::size_type i = 0; i < 3; ++i) 
        arr.push_back (vector<string> (arrTemp [i], arrTemp [i] + 3));

    return arr;
}
于 2012-05-03T02:40:17.957 に答える