警告 5 warning C4251: “CLogFile::m_strFileName”: class“ATL::CStringT<BaseType,StringTraits>”需要有 dll 接口由 class“CLogFile”的客户端使用  d:\easyeat\easyeat\elogevent\logfile.h 21 ELogEvent
这样一个警告如何解决,我编译的是个DLL,在DLL的头文件里面声明了CString的变量,如何解决。

解决方案 »

  1.   

    这个你得导出CString在你的代码里面增加
    template class __declspec(dllexport) CStringT<char>;
    template class __declspec(dllexport) CStringT<wchar_t>;
      

  2.   

    纠结,遇上类似的问题,但是仍未解决~>g:\temp\iocp_tcp_socket_encapsulation\encapsulation\encapsulation\serversocket.h(23): warning C4251: “ServerSocket::defaultIp”: class“std::basic_string<_Elem,_Traits,_Ax>”需要有 dll 接口由 class“ServerSocket”的客户端使用
    1>          with
    1>          [
    1>              _Elem=char,
    1>              _Traits=std::char_traits<char>,
    1>              _Ax=std::allocator<char>
    1>          ]