РЕДАКТИРОВАТЬ ДО ТОГО, ЧТО ВЫ ПРОЧИТАЕТЕ: Извините .. Я не добавил символ новой строки, поэтому он оказался неясным, я не могу удалить вопрос, потому что я еще не зарегистрирован, извините за потраченное время, ребята.
Я просто впервые использовал шаблон (для поиска MIN из двух чисел) вместо макроса, и мне понравилось!Но когда я попытался изменить и сделать свой собственный шаблон, он полностью провалился .. Вот мой код:
#include <stdio.h>
template <class T> T min(T a, T b) {
return a < b ? a : b;
};
//My attempt now.. because add could be int, float, etc; I wanted a template.
template <class T> T add(T a, T b) {
return a + b;
};
int main(){
printf("%f\n", min(1.3, 2.2)); //(Does not appear in console?)
printf("%d", add(1, 10)); //1.300000 (how is an int show as float? lol)
printf("%f", add(5.1, 7.34)); //1112.440000
return 0;
}
Теперь странные результаты в комментариях. Мин работает нормально, но когда я изменяю его изСравнение с "a + b" останавливает работу в течение минуты и выдает мне странные значения с плавающей запятой?!
Я использую это неправильно?Это должно быть что-то еще?что это значит?Я понимаю основы, поэтому простое объяснение будет в порядке. Спасибо!