C++-ban egy osztályon belül a második std::array<Type, Size> member nem inicializálódik. Mi lehet a gond?
Van egy az alábbihoz hasonló kódom:
typedef std::array<std::array<float, 3>, 200> tipus
class osztaly
{
public:
contructor();
func();
private:
tipus valtozo1;
tipus valtozo2;
}
A valtozo2-t nem tudom feltőlteni, mintha nem is létezne. Ha felcserélem a deklarálási sorrendet akkor a valtozo1-et nem tudom használni. Memória hibát ad ki.
Mi lehet a gond? Próbáltam külön típusokat is létrehozni a kettőnek de hasonló történt. Próbáltam 200 helyett 100 rakni de az sem segített.
Azon kívül, hogy a typedef végén nincs ; és a class végén sincs, más baja nincs. Nekem működik.
using tipus = std::array<std::array<float, 3>, 200>;
class osztaly
{
public:
tipus valtozo1;
tipus valtozo2;
};
int main()
{
osztaly o;
o.valtozo2[50][0] = 9;
std::cout << o.valtozo2[50][0] << '\n';
std::cin.get();
}
Kapcsolódó kérdések:
Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!