c++ - 如何从我的嵌套模板类中创建静态库?

标签 c++ c++11

我有一些 C++ 类,我想从中创建一个静态库。其中一个类是哈希表类,它使用另外两个类来创建对象。我试过关注另一个 small demonstration在另一个问题的答案中,但我生成的库似乎没有定义我在测试程序中编写的任何内容。我已经在单个文件中尝试了所有声明和实现,并将其分为标题/源代码,但安排似乎并不重要。如何将我的类放入静态 libHash.a?

最佳答案

以对象形式分发模板效果不是很好,因为编译器无法创建新实例。您的库的用户将只能访问库中定义的模板实例。

这就是为什么模板类和函数通常在头文件中实现的原因。

另见 Why can templates only be implemented in the header file?

关于c++ - 如何从我的嵌套模板类中创建静态库?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10457876/

相关文章:

c++ - 非模板类型参数

c++ - 如何实现平滑的声音衰减效果?

C++:强制执行一个函数,使其不能接受任何按值传递的参数

c++ - 我们可以使用类似 c++1y std::tie() 的函数进行深度绑定(bind)吗?

c++ - 将数组数组转换为指针数组

c++ - 变量在 if 语句中不可访问

c++ - 如何在 C++ 中实现强大的数据持久层?

c++ - 继承类中的比较运算符

c++ - 基于 unique_ptr 的 pimpl 类中的移动构造函数是否需要完整类型?

c++ - 为 std::shared_ptr 指定一个删除器,它适用于特定类型或其派生类型的所有对象