各位前辈:
我在静态库(*.lib)里实现了一个类,类的一些成员函数是inline的,静态库可以成功生成。但如果在其他模块使用这个静态库中的类时,会提示“LNK2001 无法解析的外部符号...”链接错误。去掉静态库中的成员函数前的inline关键字,则可以正常使用该静态库。这是正常的吗?我是不是有什么没有注意到的地方?还是inline的使用有限制?望各位前辈不吝赐教,十分感谢!
各位前辈:
我在静态库(*.lib)里实现了一个类,类的一些成员函数是inline的,静态库可以成功生成。但如果在其他模块使用这个静态库中的类时,会提示“LNK2001 无法解析的外部符号...”链接错误。去掉静态库中的成员函数前的inline关键字,则可以正常使用该静态库。这是正常的吗?我是不是有什么没有注意到的地方?还是inline的使用有限制?望各位前辈不吝赐教,十分感谢!
这是显然的,没有源代码怎么内联呢。
所谓内联,就是指,把函数中的代码嵌入调用的位置,如同不存在函数调用一样。