最近在学习C++,看到内联函数,就上机编了一个小程序,我本来以为可简单的语法,可是竟然在我编绎成功后,执行的时候出现了下面的错误:

一个关于C++ Inline关键字的引发的一个错误Linking一个关于C++ Inline关键字的引发的一个错误
一个关于C++ Inline关键字的引发的一个错误cpp.obj : error LNK2001: unresolved external symbol 
"public: int __thiscall aType::Descript(void)" (?Descript@aType@@QAEHXZ)
一个关于C++ Inline关键字的引发的一个错误Debug
/cpp.exe : fatal error LNK1120: 1 unresolved externals

 这看了好长时间没有明白怎么回事,无意中.cpp中的内联函数的定义放到.h中,再编绎执行竟然成功了.到现在还没有弄清楚为什么在连接时没有找到这个内联函数,只是知道这样用内联函数.现在将程序给贴出来,大家看一下为什么要放在.h文件中.

我的程序分为三部分:主程序(cpp.cpp),类定义文件(aType.cpp),类头文件(aType.h)
cpp.cpp:

 1一个关于C++ Inline关键字的引发的一个错误#include <iostream>
 2一个关于C++ Inline关键字的引发的一个错误#include <aType.h>
 3一个关于C++ Inline关键字的引发的一个错误using namespace std;
 4一个关于C++ Inline关键字的引发的一个错误int main(int argc, char * argv[])
 5
aType.cpp:
 1一个关于C++ Inline关键字的引发的一个错误#include "aType.h"
 2一个关于C++ Inline关键字的引发的一个错误#include <iostream>
 3一个关于C++ Inline关键字的引发的一个错误using namespace std;
 4一个关于C++ Inline关键字的引发的一个错误aType::aType(int i,int j,int k)
 5 

aType.h:
 1一个关于C++ Inline关键字的引发的一个错误class aType
 2

在这几个文件中,只要将
一个关于C++ Inline关键字的引发的一个错误inline int aType::Descript()
 }
 放到aType.h中就可执行,放到aType.cpp中就不可以执行了但可以编译通过!.这个环境是VS6.0sp6

相关文章:

  • 2021-07-30
  • 2022-12-23
  • 2022-12-23
  • 2021-07-29
  • 2021-06-30
  • 2021-05-03
  • 2021-09-19
  • 2022-12-23
猜你喜欢
  • 2023-03-14
  • 2022-12-23
  • 2022-02-09
  • 2021-10-27
  • 2022-12-23
  • 2021-07-30
  • 2021-09-14
相关资源
相似解决方案