Они почти полностью избыточны. Как отметил @Revolver, они были представлены в разных газетах, а alignment_of
- от boost
почти дословно.
Но это не означает, что черта бесполезна.
A template<class...>class
можно передать другим template
и использовать с метапрограммированием. Операторы, такие как alignof
, не могут: вам нужно будет написать template<class>class alignment_of
, прежде чем вы сможете передать его на объекты metaprogramming.
Теперь то же самое можно сказать о sizeof
, нуждающемся в шаблоне std::size_of<class>
.
...
Добавление _v
потому, что они неслись каждый::value
integral_constant
типа шаблона в std
и добавил _v
переменную шаблона. Считая, какие из них достойны и которые не были бы украшены картинками и почти бессмысленны: легче делать все, чем тратить усилия на то, чтобы сделать достойных. Это делается не доказательством того, что эта функция не устарела.
Чтобы иметь истинную ошибку при использовании с выражением вместо использования * gnu-alignof-expression * :-). – Jarod42