#pragma once #if defined _WIN32 || defined __CYGWIN__ #define DLL_PUBLIC __declspec(dllexport) #else #if defined __GNUC__ #define DLL_PUBLIC __attribute__((visibility("default"))) #else #pragma message("Compiler does not support symbol visibility.") #define DLL_PUBLIC #endif #endif class DLL_PUBLIC CmMod { private: int num = 0; public: inline int getNum() const { return num; } void asyncIncrement(); };