vs2019报错E0167 “const wchar_t *“ 类型的实参与 “WCHAR *“ 类型的形参不兼容

Posted avi9111

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了vs2019报错E0167 “const wchar_t *“ 类型的实参与 “WCHAR *“ 类型的形参不兼容相关的知识,希望对你有一定的参考价值。

解决方法参考:

vs2019报错说 E0167 "const wchar_t *" 类型的实参与 "LPCSTR" 类型的形参不兼容 - Thermo - 博客园f

参考二

c++ - Convert const wchar_t* into a WCHAR* - Stack Overflow

原因是2017之后,c++不再支持这种写法???

所以,改了一下方法的参数:

WCHAR* -> WCHAR const *

void ColorShaderClass::OutputShaderErrorMessage(ID3D10Blob* errorMessage,
 HWND hwnd, WCHAR const * shaderFilename)

.cpp

.h

2个文件都要改

@selbie With recent standard conformance improvements vc++ won't tolerate string literal assignment to pointer to non-const char anymore. As for question itself, declaring it like WCHAR const *vsFilename or as LPCWSTR vsFilename should fix the error. 

– user7860670

 Jan 21, 2018 at 8:01 

至于,WCHAR*指针,wschar, const 和L"" ,到底是什么鬼,之后再看看吧

以上是关于vs2019报错E0167 “const wchar_t *“ 类型的实参与 “WCHAR *“ 类型的形参不兼容的主要内容,如果未能解决你的问题,请参考以下文章

最近在自学C语言,用的VS2019,为啥照抄结果还报错?请指教。。。。

vs2019 解决方案加载报错

解决VS2019 scanf报错的问题

解决VS2019 scanf报错的问题

VS2017报错 MSB803MSB8036 找不到 Windows SDK 版本8.1

vs2019 dumpbin使用不了?