У меня есть следующий код на C++. Каждый раз, когда я запускаю его, он имеет другой выход. Почему это происходит? Это как-то связано с утечкой памяти?C++ случайные числа при возврате указателя из функции
#include <iostream>
using namespace std;
template <class T, class U>
T f(T x, U y)
{
return x+y;
}
int f(int x, int y)
{
return x-y;
}
int main()
{
int *a=new int(4), b(16);
cout<<*f(a,b);
return 0;
}
Это связано с тем, что вы пытаетесь изучить C++ методом проб и ошибок. Это не будет работать. Изучайте его систематически из хорошей книги. –
@JesperJuhl, который говорит, что f возвращает int? Как a int *, который вводится в T? – lordjohncena
@lordjohncena Я пропустил бит шаблона - следовательно, почему я удалил свой комментарий, когда понял. –