template <class T>
struct promote
{
typedef see-below type;
};
Тип:Если интегральное или плавающее продвижение может быть применено к значению типа<T>, то применяется интегральное и плавающее продвижение к<T>и сохраняет cv-квалификаторы<T>, в противном случае оставляет<T>неизменным. См. такжеintegral_promotionиfloating_point_promotion.
C++ Стандартная ссылка:4.5 кроме 4.5/3 (интегральное битовое поле) и 4.6.
Совместимость компиляторов:Все текущие компиляторы поддерживаются этой чертой.
Заголовок:<#include
<boost/type_traits/promote.hpp>>или<#include<boost/type_traits.hpp>>
Table 1.25. Examples
|
выражение
|
Тип результата
|
<promote<shortvolatile>::type> |
<intvolatile> |
<promote<floatconst>::type> |
<doubleconst> |
<promote<short&>::type> |
<short&> |