【发布时间】:2018-11-29 16:27:57
【问题描述】:
c++入门书的以下引用让我很困惑
与其他函数不同,可以定义 inline 和 constexpr 函数 在节目中多次。毕竟编译器需要 定义,而不仅仅是声明,以便扩展代码。 但是,给定 inline 或 constexpr 的所有定义都必须 完全匹配。结果, inline 和 constexpr 正常运行 在标题中定义。 -- C++ 入门第 5 版,240 页
“可能在程序中定义多次” 这句话让我很困惑。据我了解,可以多次声明,但只需要定义一次。
谁能给我一个例子,为什么会有多重定义。
【问题讨论】:
-
这就是
inline(和constexpr,这意味着inline)函数的特殊之处:它们可以有多个定义。
标签: c++ compiler-errors linker inline