inline 函数:undefined reference

参考1、 https://blog.csdn.net/GW569453350game/article/details/77934568

       2、https://stackoverflow.com/questions/34208154/inline-functions-in-cpp-files-of-shared-libraries

  1. 如果将函数的实现放在头文件中,那么每一个包含该头文件的cpp文件都将得到一份关于该函数的定义,那么链接器会报函数重定义错误。
  2. 如果将函数的实现放在头文件,并且标记为 inline 那么每一个包含该头文件的cpp文件都将得到一份关于该函数的定义,并且链接器不会报错
  3. 如果将函数的实现放在cpp文件中,并且没有标记为inline,那么该函数可以被连接到其他编译单元中。
  4. 如果将函数的实现放在cpp文件中,并且标记为inline, 那么该函数对其他编译单元不可见,也就是其他cpp文件不能连接该函数库。这就是标题中出现的 … undefined reference to …
posted @ 2018-04-17 21:05  akai0017  阅读(1087)  评论(0编辑  收藏  举报