Tablica struktur inicjalizacja zmiennej globalnej

0

Witam,

mam prosta strukture:

struct persona { // structure for list of names
AnsiString name;
AnsiString surname;
};

chcialbym stworzyc:

persona tablica[20];

i od razu zainicjalizowac ja 20 nazwiskami. Jak to powinienem zrobic?

persona tablica={"",""};

nie dziala. Pojedyncze wklepywanie typu tablica[0].name=""; dziala jedynie w ciele jakiejs funkcji.
Jak wykonac inicjalizacje poza mainem i funkcjami?

1

spróbuj tak:

persona tablica[]={{"jan","kowalski"},
                   {"anna","nowak"}};
0

niestety

[C++ Error] NameList.cpp(19): E2141 Declaration syntax error

0

A coś takiego:

class Persona
{
   public: Persona(string imie, string nazwisko) { fname = imie; sname = nazwisko; }
   private:
      string fname;
      string sname;
};

//(...)

Persona tablica[] = { Persona("jan","kowalski"),
                               Persona("maj","maj") }; 
0
struct persona
  {
   string name,surname;
  };

persona tablica[]=
  {
   {"jan","kowalski"},
   {"anna","nowak"},
   ...
   {"piotr","xinski"}, // przy ostatnim zostawiaj przecinek, wygodniej przy dodawaniu nowego
  };
0
_13th_Dragon napisał(a):
struct persona
  {
   string name,surname;
  };

persona tablica[]=
  {
   {"jan","kowalski"},
   {"anna","nowak"},
   ...
   {"piotr","xinski"}, // przy ostatnim zostawiaj przecinek, wygodniej przy dodawaniu nowego
  };

Dostaje:Cannot convert char* to AnsiString.

Mto twoje rozwiazanie pewnie dziala, ale chcialem zeby to byla struktura.

Chyba ostatecznie zrobie strukture z char* i bede rzutowal na AnsiString.

0

Pomylka: dostaje cannot convert char* to persona.

0

To jest struktura.
Cannot convert char* to AnsiString. - oznacza że nie zmieniłeś AnsiString na string.
Cannot convert char* to persona. - oznacza że gdzieś pokręciłeś z nawiasami klamrowymi (może nie wywaliłeś trzykropka.

1 użytkowników online, w tym zalogowanych: 0, gości: 1