O zwracaniu zmiennych i typach wyliczeniowych

O zwracaniu zmiennych i typach wyliczeniowych
  • Rejestracja: dni
  • Ostatnio: dni
0

Witajcie.
Mam parę pytań.

  1. Czy można zwrócić z funkcji CAŁĄ tablicę (u mnie to jednowymiarowa tablica tEkwipunekLOC z 3 wartościami) i jak? Wpisać
Kopiuj
return tEkwipunekLOC[]

?

  1. Dlaczego kompilator nie dopuszcza do nadania alternatywnych wartości string dla typu wyliczeniowego?
Kopiuj
enum forsale { xy = "alternate xy", cb = "alternate cb", ug = "alternate ug" };
cout << static_cast<string>(ZmiennaTypuForsale);

i mówi, że alternatywna wartość musi być* INTEGER*?

RE
  • Rejestracja: dni
  • Ostatnio: dni
0
  1. Nie można. Możesz zwrócić wskaźnik na pierwszy element.
  2. enum to typ wyliczeniowy (enumeration). Zauważ literki l, i, c i z. Tak, tam mogą być tylko liczby. Najprawdopodobniej w twoim przypadku najlepiej będzie użyć mapy.
mychal
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: Przedmonitorze Górne
0
  1. Można zwrócić std::vector, można zwrócić wskaźnik do tablicy(tylko nie lokalnej), można wypełnić tablicę wewnątrz funkcji np.
Kopiuj
void wypelnij_tab(int* tab, const int& rozmiar)
{
  for(int i = 0; i < rozmiar; ++i)
  {
    tab[i] = i;
  }
}
  1. Dlatego że ponieważ.

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.