But, what problem ???
for example:

Qt Code:
  1. ....
  2. typedef string (CALLBACK* EXECSQL)(string, string, int);
  3. typedef int (CALLBACK* MSGBOX) (string, int);
  4.  
  5. class SCRIPTENGINE_EXPORT ScriptEngine
  6. {
  7. public:
  8.  
  9. ScriptEngine();
  10. ~ScriptEngine();
  11.  
  12. bool LoadScripts(string);
  13. void Clear();
  14. int CallFunction(string cFunction, ScriptVal sVal, string& cOut);
  15. void GetLastError(string &cError);
  16.  
  17. void SetPtrExecSql(EXECSQL pfnExecSql);
  18. void SetPtrMsgBox (MSGBOX pfnMsgBox);
  19.  
  20. private:
  21.  
  22. string m_Scripts;
  23. string m_Error;
  24.  
  25. };
To copy to clipboard, switch view to plain text mode 

scriptengine_global.h
Qt Code:
  1. #ifndef SCRIPTENGINE_GLOBAL_H
  2. #define SCRIPTENGINE_GLOBAL_H
  3.  
  4. #include <QtGlobal>
  5.  
  6. #ifdef SCRIPTENGINE_LIB
  7. #define SCRIPTENGINE_EXPORT Q_DECL_EXPORT
  8. #else
  9. #define SCRIPTENGINE_EXPORT Q_DECL_IMPORT
  10. #endif
  11. #endif // SCRIPTENGINE_GLOBAL_H
To copy to clipboard, switch view to plain text mode