#ifndef __mai__libprint__ #define __mai__libprint__ #ifdef LIBPRINT_STATIC // static lib #define LIBPRINT_API #else // shared lib #ifdef WIN32 // windows #ifdef LIBPRINT_SHARED #define LIBPRINT_API __declspec(dllexport) #else #define LIBPRINT_API __declspec(dllimport) #endif #else // unix #define LIBPRINT_API __attribute__((visibility("default"))) #endif // os type check end #endif // lib type check end class LIBPRINT_API Value { public: Value(int v); int get() const; private: int val; }; void LIBPRINT_API print(const Value& a); extern bool LIBPRINT_API printOk; #endif