utils - who created c++



Por que o std:: is_pod está obsoleto no C++ 20? (1)

O POD está sendo substituído por duas categorias que dão mais nuances. A reunião do padrão c ++ em novembro de 2017 teve isto a dizer sobre isso:

Deprecating a noção de "simples dados antigos" (POD). Ele foi substituído por mais duas categorias diferenciadas de tipos, “trivial” e “layout padrão”. “POD” é equivalente a “layout trivial e padrão”, mas para muitos padrões de código, uma restrição mais restrita a apenas “trivial” ou apenas “layout padrão” é apropriada; para encorajar tal precisão, a noção de “POD” foi, portanto, obsoleta. O traço de biblioteca is_pod também foi descontinuado correspondentemente.

Para tipos de dados simples, use a função is_standard_layout , para tipos de dados triviais (como structs simples) use a função is_trivial .

std::is_pod será provavelmente obsoleto em C ++ 20.
Qual o motivo dessa escolha? O que devo usar no lugar de std::is_pod para saber se um tipo é realmente um POD?





typetraits