Udostępnij przez


Ostrzeżenie C26455

Konstruktor domyślny nie powinien zgłaszać. Zadeklaruj go "noexcept" (f.6)

Podstawowe wytyczne dotyczące języka C++ sugerują, że konstruktory domyślne nie powinny wykonywać żadnych czynności, które mogą zgłaszać. Gdy domyślny konstruktor może zgłosić, może również zostać zgłoszony cały kod, który opiera się na prawidłowo utworzonego obiektu.

Uwagi

Rozważmy konstruktory domyślne typów STL, takich jak std::vector. W tych implementacjach konstruktory domyślne inicjują stan wewnętrzny bez wprowadzania alokacji. std::vector W tym przypadku rozmiar jest ustawiony na wartość 0, a wskaźnik wewnętrzny ma wartość nullptr. Ten sam wzorzec powinien być zgodny ze wszystkimi konstruktorami domyślnymi.

Nazwa analizy kodu: DEFAULT_CTOR_NOEXCEPT

Zobacz też

C26439
Podstawowe wytyczne języka C++ F.6