C++ 链接类定义中定义的方法

标签 c++ class methods linker

出于好奇,如果您将方法定义放在 header 中的类定义中,并且编译器没有内联它,那么在链接器阶段该方法被放入哪个或哪些目标文件以供访问?它是否放在每个包含 header 的 .obj 文件中,然后在链接器阶段丢弃额外的拷贝?

最佳答案

Is it put in every .obj file that includes the header, and then extra copies are thrown away during the linker phase?

一般来说,是的。 See this paper.

关于C++ 链接类定义中定义的方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6230048/

相关文章:

c++ - C++ 单元测试工具的建议

php - 将我的数据库类与项目中的其他类一起使用

JavaScript 类语法 : Static Data Members

python - 如果 deepcopy() 不起作用,如何复制 Python 类实例?

function - Julia:效率和指示参数类型

c++ - 使用 Boost C++ 库将正则表达式替换为自定义替换

c++ - Qt4 C++ 指向 const QList of pointers 的指针

java - 传递将参数传递给方法的 Lambda

c++ - glGetString(GL_VERSION) 返回 1.1.0,即使卡支持 2.1

java - 从整数填充二进制数数组时遇到问题