yb775802151 2016-03-03 10:27 采纳率: 0%
浏览 1466

C++类将类的构造器设置为内联的,然后main函数和类的实现不在一个.cpp文件中则会报错

我在测试书上的例子时,按书上把类的构造器前加了inline,main函数和类的实现不在同一个文件中,在测试时报了如下错误:
1>Main.obj : error LNK2019: 无法解析的外部符号 "public: __thiscall UserProfile::UserProfile(void)" (??0UserProfile@@QAE@XZ),该符号在函数 _main 中被引用
1>Main.obj : error LNK2019: 无法解析的外部符号 "public: __thiscall UserProfile::UserProfile(class std::basic_string,class std::allocator >,enum UserProfile::uLevel)" (??0UserProfile@@QAE@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@W4uLevel@0@@Z),该符号在函数 _main 中被引用
1>D:\Visual Studio 2015\Projects\STLStudy\Debug\STLStudy.exe : fatal error LNK1120: 2 个无法解析的外部命令

我把inline去掉或是把main函数放在类的实现的文件中时,就可以正常运行了。想知道为什么。编译器是vs2015

  • 写回答

2条回答

  • threenewbee 2016-03-03 13:43
    关注

    贴出你的代码看下。关键看你的include怎么使用,类怎么定义的。

    评论

报告相同问题?

悬赏问题

  • ¥30 这是哪个作者做的宝宝起名网站
  • ¥60 版本过低apk如何修改可以兼容新的安卓系统
  • ¥25 由IPR导致的DRIVER_POWER_STATE_FAILURE蓝屏
  • ¥50 有数据,怎么建立模型求影响全要素生产率的因素
  • ¥50 有数据,怎么用matlab求全要素生产率
  • ¥15 TI的insta-spin例程
  • ¥15 完成下列问题完成下列问题
  • ¥15 C#算法问题, 不知道怎么处理这个数据的转换
  • ¥15 YoloV5 第三方库的版本对照问题
  • ¥15 请完成下列相关问题!