一个简单小问题,请大家帮忙!
我想自己定义一个求最小值的函数:
头文件如下:
#ifndef TRY_H
#define TRY_H
template <typename T>
T min(T x1, T x2);
#endif
实现文件如下:
#include "try.h "
template <typename T>
T min(T x1, T x2)
{
return x1 <x2 ? x1 : x2;
}
为什么在编译时报错?请大家指教。
[解决办法]
1. 模版的定义和实现都要放在头文件中:
#ifndef TRY_H
#define TRY_H
template <typename T>
T min(T x1, T x2)
{
return x1 <x2 ? x1 : x2;
}
#endif
2. 加using
#ifndef TRY_H
#define TRY_H
#include <vector>
using std::vector;
int y(vector <int> x);
#endif
[解决办法]
int y(std::vector <int> x);