請看看下面的代碼鏈接錯誤類模板
Calculator.h
#pragma once
#include <iostream>
template<class T>
class Calculator
{
public:
Calculator(void);
~Calculator(void);
void add(T x, T y)
{
cout << (x+y) << endl;
}
void min(T x, T y)
{
cout << (x-y) << endl;
}
void max(T x, T y)
{
cout << (x*y) << endl;
}
void dev(T x, T y)
{
cout << (x/y) << endl;
}
};
Main.cpp的
#include "Calculator.h"
using namespace std;
int main()
{
Calculator<double> c;
c.add(23.34,21.56);
system("pause");
return 0;
}
當我運行此代碼,我得到下面的錯誤。我對班級模板不太瞭解。請幫忙!
1>------ Build started: Project: TemplateCalculator, Configuration: Debug Win32 ------
1>LINK : error LNK2001: unresolved external symbol _mainCRTStartup
1>c:\users\yohan\documents\visual studio 2010\Projects\TemplateCalculator\Debug\TemplateCalculator.exe : fatal error LNK1120: 1 unresolved externals
========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========
main()在Calculator.h中??? – billz
可能是因爲你已經在頭文件中獲得了'main'函數。將它移動到'Calculator.cpp'中,'#include Calculator.h'中,然後嘗試編譯。 – Yuushi
@MarkGarcia:他們可以被igonred。這是完整的代碼。數字[2]是我爲未來使用而創建的一個數組。反正我不需要它 –