2016-12-27 1 views
1
#include <iostream> 
#include <array> 
#include <string> 

using namespace std; 
typedef array<string,3> TString; 

int main(){ 
    TString str; 
    str = {"Hi","Example", "Error"}; 
    cout << str[0] <<endl; 
    return 0; 
} 

L'original code d'erreur que je reçois:Est-il possible de créer un tableau de chaînes, si oui, pourquoi ai-je cette erreur: erreur: expression attendue?

pruebastr.cpp:10:8: error: expected expression str = {"Hi","Example", "Error"}; ^1 error generated.

Suis-je en train de définir le tableau dans le mauvais sens ou initialisant mal?

+2

Essayez 'TString str {" Hi "," Exemple "," Erreur "};' à la place. –

+4

fonctionne très bien avec le drapeau 'std = C++ 11'. –

+0

"... ou en l'initialisant mal". Votre ligne '=' n'est pas * initialisation *, mais * affectation *. Cependant, il devrait compiler en C++ 11. – AnT

Répondre

5

Assurez-vous que votre compilateur standard flag (std) est au moins C++ 11