【发布时间】:2018-01-21 11:58:53
【问题描述】:
找了一阵子答案,现在比以前更迷茫了……
我想知道如果我在头文件中声明了一个未实现但在主函数中调用的内联函数,这会导致链接器或编译器错误吗?
当我查看错误时,我得到undefined reference to 'A::a()',这似乎是一个链接器错误。
但是,在某些讨论中,它说编译器必须看到函数声明,因此它会是编译器错误。
我希望你能告诉我我在这里做错了什么:)
【问题讨论】:
-
您已经声明了
A::a(),但尚未定义它——您需要编写它的作用。或者只是将其更改为inline void a() {};注意请发布代码而不是图片。 -
@RichardCritten 问题不在于为什么会发出此错误,而在于报告它的责任——链接器或编译器。
标签: c++ linker compiler-construction inline