none
vc++ 导出类中 定义Stl 容器类的成员变量会出现警告,请问这是为什么? RRS feed

  • 问题

  • vc++ 导出类中 定义Stl 容器类(list)的成员变量会出现警告,请问这是为什么?

    例如
    #ifdef CORE_API_CLASS
    #define CORE_APIC __declspec(dllexport)
    #else CORE_APIC __declspec(dllimport)
    #endif
    
    #include <list>
    using namespace std;
    
    class CORE_API CClassB: CClassA
    {
    public:
       CHikEncodeDevice(); 
    ~CHikEncodeDevice();
       list<int> ids;
    }
    警告内容是:
    warning C4251: “ CClassB::ids”: class“std::list<_Ty>”需要有 dll 接口由 class“CClassB”的客户端使用

    程序可以正常运行。请问如何能避免这种情况。谢谢
    2009年10月13日 3:57

答案

全部回复