是否可以导出包装类的结构而不包装它(结构仅包含枚举和基元)?假设我的包装如下所示:
WorkerWrapper.h
#ifdef TESTEXPORTDLL_EXPORTS
#define TESTEXPORTDLL_API __declspec(dllexport)
#else
#define TESTEXPORTDLL_API __declspec(dllimport)
#endif
class Worker;
struct JobTypeInfo;
template class TESTEXPORTDLL_API std::unique_ptr<Worker>;
class TESTEXPORTDLL_API WorkerWrapper {
private:
std::unique_ptr<Worker> fWorker;
public:
WorkerWrapper();
~WorkerWrapper();
WorkerWrapper(WorkerWrapper&& aThat);
WorkerWrapper& operator= (WorkerWrapper&& aThat);
void DoJob(JobTypeInfo aTypeInfo);
};
Run Code Online (Sandbox Code Playgroud)
这是通过使用WorkerWrapper.cpp定期实现的处理,这不是我问题的原因。该类是前向声明的,并包含一个我想要导出的结构。unique_ptrstd::moveWorkerWorkerWrapper
工人.h
struct JobTypeInfo
{
typedef enum
{
DoThis,
DoThat,
DoNothing
} CalcType;
CalcType sCalcType;
//... primitives
};
class Worker
{
public:
void DoJob(JobTypeInfo aTypeInfo);
};
Run Code Online (Sandbox Code Playgroud)
我在这里能做什么?
提前致谢。