具有多个类的 C++ 共享库

标签 c++ qt dll namespaces shared-libraries

我想在 Qt C++ 的共享库中有两个或多个类。 制作包含两个或更多类的共享库(dll)的方法是什么? 它们需要嵌套在父类中还是应该使用 namespace ? 您可以指导我或举例说明最简单或优雅的方法是什么?

所有类都是独立的;我只想从应用程序访问适当的类。可能有很多类;所以单个父类中的嵌套类实际上是不可读的。我认为 C++ 中没有部分类支持。另外我不确定嵌套类和命名空间是否是唯一的方法(?)

class A
{

public:
    A();
    void TestA();

};

class B
{

public:
    B();
    void TestB();

};

应用:

MyLib::A a;
MyLib::B b;

这里我不知道如何实现 MyLib。

最佳答案

对于那些对解决方案感兴趣的人来说,只需导出类

Q_DECL_EXPORT class A
{

public:
    A();
    void TestA();

};

关于具有多个类的 C++ 共享库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35381692/

相关文章:

c++ - 如何在 CMake 中编译非通用语言

c++ - 如何使用 C/C++ 获取原始相机数据?

c++ - 为小部件存储画家有意义吗?

c++ - 'sizeof' 对不完整类型 'QImage' 的无效应用

android - 为 Objective-c 和 java 函数创建一个 dll

java - "|"中的 "int style = SWT.APPLICATION_MODAL | SWT.OK;"有什么作用(以及如何用谷歌搜索它)?

c++ - 如何将值插入结构中的 vector

c++ - 如何线程化 QSortFilterProxyModel 的排序?

c# - 将 byte[] 从 c# 传递到纯 c dll 时发生访问冲突

c++ - 手动注册 OCX 文件