Comment déclarer des tableaux dans un en-tête c++?

Ceci est lié à d'autres questions, telles que: cette, et certains de mes autres questions.

Dans cette question, et d'autres, nous voyons que nous pouvons déclarer et initialiser les tableaux de chaîne dans une belle étape, par exemple:

const char* const list[] = {"zip", "zam", "bam"}; //from other question

Cela peut être fait dans la mise en œuvre d'une fonction de-pas la peine, ou dans le corps d'une .fichier cpp, en dehors de toute portée.

Ce que je veux faire est d'avoir un tableau comme ceci que comme membre d'une classe, je suis en utilisant, quelque chose comme ceci:

class DataProvider : public SomethingElse
{
    const char* const mStringData[] = {"Name1", "Name2", "Name3", ... "NameX"};

public:
    DataProvider();
    ~DataProvider();

    char* GetData()
    {
        int index = GetCurrentIndex(); //work out the index based on some other data
        return mStringData[index]; //error checking and what have you omitted
    }

};

Mais, le compilateur se plaint et je n'arrive pas à savoir pourquoi. Est-il possible de déclarer et initialiser un tableau comme ceci dans une étape dans la définition d'une classe? Existe-il des alternatives qui sont mieux?

  • "implémentation" devrait être orthographié "mise en œuvre"
InformationsquelleAutor xan | 2008-11-12