0

セットアップが次のようになっている場合、文字配列の配列を使用するにはどうすればよいですか。

classes.h 内

    namespace foomaker
    {
        class foo
        {
            const char  **mystringarray;

            bool ipitythefoo ();

        };
    }

foo.cpp で #include classes.h

    namespace foomaker
    {

        bool foo::ipitythefoo()
        {
            *mystringarray[] = {"Mr. T","Gold Chains","Mohawks"};

            return false;
        };
    }

コンパイラがエラーをスローしています:

    1>.\foofactory.cpp(5) : error C2059: syntax error : ']'
    1>.\foofactory.cpp(5) : error C2143: syntax error : missing ';' before '{'
    1>.\foofactory.cpp(5) : error C2143: syntax error : missing ';' before '}'

それともこれは可能ですか?

これには文字列、マップ、またはベクトルを使用できません。

最終結果は、これが位置番号で取得する必要があるエラー文字列用になるということです。エラー文字列は、このクラスに固有です。

ありがとう

4

1 に答える 1

2

あなたがしたいことは不可能です。アレイを再初期化しようとしていますが、実行できません。おそらく、ユース ケースがエラー文字列用であるとすると、次のようなことができます。

    bool foo::ipitythefoo()
    {
        static const char* actualstringarray[] = {"Mr. T","Gold Chains","Mohawks"};
        *mystringarray = actualstringarray;

        return false;
    };

しかし、最初はエラー文字列の配列の方が理にかなっていますstatic

于 2012-05-26T20:08:40.453 に答える