vs2019 informa el error E0167 El parámetro de tipo "const wchar_t *" es incompatible con el parámetro de tipo "WCHAR *"

Referencia de la solución:

vs2019 informa un error que dice E0167 "const wchar_t *" el tipo de participación real El parámetro de tipo "LPCSTR" es incompatible - Thermo - Blog Park f

referencia dos

c++ - Convertir const wchar_t* en un WCHAR*

¿La razón es que después de 2017, c ++ ya no admite esta forma de escribir? ? ?

Entonces, cambie los parámetros del método:

WCHAR* -> constante WCHAR *

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

.cpp

.h

2 archivos tienen que ser cambiados

@selbie Con las recientes  mejoras de conformidad con el estándar,  vc ++ ya no tolerará la asignación de cadenas literales para apuntar a caracteres no constantes. En cuanto a la pregunta en sí, declararla como  WCHAR const *vsFilename o como  LPCWSTR vsFilename debería corregir el error. 

–  usuario7860670

 21 de enero de 2018 a las 8:01 

En cuanto a qué diablos son los punteros WCHAR*, wschar, const y L"" , veamos más adelante

Supongo que te gusta

Origin blog.csdn.net/avi9111/article/details/123571677
Recomendado
Clasificación