Upozornění kompilátoru (úroveň 1) C4269
'identifier' : 'const' automatic data initialized with compiler generated default constructor produces unreliable results
Automatická const
instance jiné než triviální třídy se inicializuje pomocí výchozího konstruktoru generovaného kompilátorem.
Příklad
// C4269.cpp
// compile with: /c /LD /W1
class X {
public:
int m_data;
};
void g() {
const X x1; // C4269
};
Vzhledem k tomu, že tato instance třídy je generována v zásobníku, počáteční hodnota m_data
může být cokoli. Vzhledem k tomu, že se jedná o const
instanci, nelze hodnotu m_data
nikdy změnit.