Есть ли способ присвоения переменной произвольного типа T
это минимальное или максимальное значение?
template <typename T>
void setMax(T& var){
var=MAXIMUM_OF_TYPE_T; //can this be done?
}
T toBeMaxed;
setMax(toBeMaxed);
Если это T
было int
Я мог бы также сделать
var=std::numeric_limits<int>::max();
вместо.
Если вы имеете дело только с типами, которые имеют специализацию std::numeric_limits<T>::max();
Вы можете реализовать свою функцию следующим образом:
#include <limits>
template <typename T>
void setMax(T& var){
var=std::numeric_limits<T>::max();
}
int main() {
int intvar;
setMax(intvar);
float floatvar;
setMax(floatvar);
char charvar;
setMax(charvar);
}
Других решений пока нет …