В этом примере coord_squared_t
является псевдонимом для целочисленного типа с по меньшей мере вдвое большим размером целочисленного типа coord_t
:
typedef int_least32_t coord_t;
coord_squared_t CalculateSquaredHypothenuse(coord_t x, coord_t y){
coord_squared_t _x=x;
coord_squared_t _y=y;
return _x*_x+_y*_y;
}
Что можно использовать для выражения coord_squared_t
в терминах coord_t
? Есть ли что-нибудь в стандартной библиотеке, которая позволяет мне делать что-то вроде double_width<coord_t>::type
, чтобы получить правильную ширину, вместо явного выбора типа?
С++ 11 или С++ 14 в порядке.