在内核中使用C++遇到的错误


## error LNK2019: 无法解析的外部符号 __ultod3 参考这里,结论是使用_/arch:SSE_或_/arch:IA32_


## error LNK2019: 无法解析的外部符号 __wassert 自己实现,记得_extern “C”_: extern “C” _CRTIMP void __cdecl _wassert(_In_z_ const wchar_t * _Message, _In_z_ const wchar_t *_File, _In_ unsigned _Line) { DbgBreakPoint(); DbgBreakPoint(); return; }


## error C2193: “void __cdecl dynamic atexit destructor for ‘public: static std::_System_error_category std::_Error_objects<int>::_System_object’‘(void)”: 已在段中C:\Program Files\Microsoft Visual Studio 12.0\VC\Include\xmemory0 这个问题一般出现在驱动程序中,把代码放在_#pragma code_seg_段中即可.


## error LNK2019: 无法解析的外部符号 “public: __thiscall std::exception::exception 内核层无法使用std的异常体系,都注掉吧,这里有比较详细的说明


## error LNK2001: 无法解析的外部符号 “const type_info::’vftable’” 项目属性 -> C/C++语言 -> 启用运行时类型信息 -> (否)/GR


## error LNK2019: 无法解析的外部符号 __ultod3 项目属性 -> C/C++语言 -> 代码生成 -> 启用增强指令集 -> * 流式处理 SIMD 扩展 (/arch:SSE) * 或 无增强指令 (/arch:IA32)