Header only library
C++中如何实现header only library?于此相关的内容有:
1) inline
: C-and-C++\specifiers\inline
2) unnamed namespace: C++\Language-reference\Basic-concept\Organization\Namespace
3) linkage: C-and-C++\From-source-code-to-exec\Link\Linkage
4) ODR: C-and-C++\Declaration-and-definition\Definition\ODR
Class definition in header file
这是接着昨天的关于const and linkage
而来的,昨天讨论了const
variable的linkage,显然在一个头文件中的定义的const
variable,是可以被多态其他的translation unit所引用的,这让我想到了类似的问题:header only class,显然在一个header file中定义了一个class,它可以被多个其他的translation unit所引用,那这是否表明class是internal linkage。
Google:c++ header only class and ODR,下面是比较好的解释:
维基百科Header-only 维基百科One Definition Rule ORD和linkage之间的关联?linkage是否