当我在我的main函数中调用模板类"add"和"greater"中的两个函数时,我一直得到未定义的引用.
所以,我有:number.h
#ifndef NUMBER_H
#define NUMBER_H
template <class T>
class number {
public:
T x;
T y;
number (int a, int b){
x=a; y=b;}
int add (T&);
T greater ();
};
#endif
Run Code Online (Sandbox Code Playgroud)
number.cpp
#include "number.h"
template <class T>
int number<T>::add (T& rezAdd){
rezAdd = x+y;
return 1;
}
template <class T>
T number<T>::greater (){
return x>y? x : y;
}
Run Code Online (Sandbox Code Playgroud)
我的主文件是:resolver.cpp
#include <stdio.h>
#include <stdlib.h>
#include "number.h"
int main (int argc, char **argv) {
int aux;
number<int> c(3,5);
c.add(aux);
printf …Run Code Online (Sandbox Code Playgroud)