C++构造函数重载时的动态库生成

C++生成动态链接库(Qt)

在Qt中,对于只有一个构造函数的C++类,按照如下方法即可成功生成动态库

#if defined(MYLABLEDLL_LIBRARY)
#  define MYLABLEDLL_EXPORT Q_DECL_EXPORT
#else
#  define MYLABLEDLL_EXPORT Q_DECL_IMPORT
#endif

class MYLABLEDLL_LIBRARY A {
publicA();
            ~A();
};

在项目工程中是否定义MYLABLEDLL_LIBRARY宏就能决定接口是导入还是导出。
在生成dll的工程中定义,则为输出接口;在使用dll的工程中不定义,则为输入接口;

问题:构造函数存在重载情况时动态库的生成
#if defined(MYLABLEDLL_LIBRARY)
#  define MYLABLEDLL_EXPORT Q_DECL_EXPORT
#else
#  define MYLABLEDLL_EXPORT Q_DECL_IMPORT
#endif

class MYLABLEDLL_LIBRARY A {
publicA();
             A(int);
            ~A();
};

这个类中存在两个构造函数

A();
A(int);

如果再使用上面的方式生成动态库则会报错

 error: '__declspec(dllexport)' cannot be applied to more than one default constructor in 'A'
error: C2668: “A::A”: 对重载函数的调用不明确

请问有没有相关的解决方案?

同款困难,蹲一个