我想确切地了解程序编译器的哪个部分以及链接器所关注的内容.所以我写了下面的代码:
#include <iostream>
using namespace std;
#include <string>
class Test {
private:
int i;
public:
Test(int val) {i=val ;}
void DefinedCorrectFunction(int val);
void DefinedIncorrectFunction(int val);
void NonDefinedFunction(int val);
template <class paramType>
void FunctionTemplate (paramType val) { i = val }
};
void Test::DefinedCorrectFunction(int val)
{
i = val;
}
void Test::DefinedIncorrectFunction(int val)
{
i = val
}
void main()
{
Test testObject(1);
//testObject.NonDefinedFunction(2);
//testObject.FunctionTemplate<int>(2);
}
Run Code Online (Sandbox Code Playgroud)
我有三个功能:
FunctionTemplate - 功能模板.
现在如果我编译这段代码,我会在DefinedIncorrectFunction中找到缺少';'的编译器错误.
假设我修复此问题然后注释掉testObject.NonDefinedFunction(2).现在我收到链接器错误.现在注释掉testObject.FunctionTemplate(2).现在我收到了缺少';'的编译器错误. …