#pragma once #ifdef DLL_EXPORT #define DLL_API __declspec(dllexport) #else #define DLL_API __declspec(dllimport) #endif #include #include struct innerSettings; class DLL_API Settings { public: Settings(std::shared_ptr); virtual bool isNull() const; virtual bool Contains(char*); virtual void SetValue(char*, char*); virtual std::string GetValue(char*, char*); virtual void Remove(char*); virtual std::shared_ptr getInner(); virtual void setInner(std::shared_ptr); private: std::shared_ptr inner=nullptr; };