Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
'class': Výchozí inicializátor člena není povolený pro člena třídy hodnot.
Poznámky
V sadě Visual Studio 2015 a starší kompilátor povolil (ale ignoroval) výchozí inicializátor člena pro člena třídy hodnot. Výchozí inicializace třídy hodnot vždy nula inicializuje členy; Výchozí konstruktor není povolen. V sadě Visual Studio 2017 vyvolá výchozí inicializátory členů chybu kompilátoru, jak je znázorněno v tomto příkladu:
Příklad
Následující příklad vygeneruje C3446 ve Visual Studio 2017 a novějších verzích.
// C3446.cpp
value struct V
{
int i = 0; // error C3446: 'V::i': a default member initializer
// is not allowed for a member of a value class
int j {0}; // C3446
};
Chcete-li chybu opravit, odeberte inicializátor:
// C3446b.cpp
value struct V
{
int i;
int j;
};