Visual c++ Microsoft Studio中的Microsoft文档代码生成错误 我最近才创建了C++控制台应用程序,WiAPI仍然是新的,所以也许我只是缺少了一些东西。

Visual c++ Microsoft Studio中的Microsoft文档代码生成错误 我最近才创建了C++控制台应用程序,WiAPI仍然是新的,所以也许我只是缺少了一些东西。,visual-c++,visual-studio-2019,msdn,Visual C++,Visual Studio 2019,Msdn,在使用中的代码时,我在VisualStudio中遇到了关于不兼容类型的错误。到目前为止,我一直在更改或覆盖变量。我想是时候做对了 例如: 如果将最后一个示例复制粘贴到正在工作的visual studio项目中,则会出现多个错误: 由于它是Microsoft代码和Microsoft软件,我认为它不需要更改。LPCSTR被定义为常量char*,而不是常量wchar\u t*。在定义UNICODE的情况下使用LPCWSTR或LPCTSTR。只有在从头开始而不是使用项目模板创建项目时,才会出现错误。

在使用中的代码时,我在VisualStudio中遇到了关于不兼容类型的错误。到目前为止,我一直在更改或覆盖变量。我想是时候做对了

例如:

如果将最后一个示例复制粘贴到正在工作的visual studio项目中,则会出现多个错误:


由于它是Microsoft代码和Microsoft软件,我认为它不需要更改。

LPCSTR被定义为常量char*,而不是常量wchar\u t*。在定义UNICODE的情况下使用LPCWSTR或LPCTSTR。

只有在从头开始而不是使用项目模板创建项目时,才会出现错误。这不是个好主意。错误的特定设置是“项目>属性>常规>字符集”。世界和代码示例都讲Unicode。你可能会错过很多其他的好东西,尤其是在程序中诊断UB的工具非常有用。一定要使用项目模板。@HansPassant到目前为止,我使用的是默认字符集,在当前版本中是project>Properties>Advanced>“Character set”,设置为“use Multi-Byte Character set”(使用多字节字符集),将其更改为unicode确实解决了这个问题。但我不确定它是否完全回答了这个问题,是因为MS code在默认情况下无法在MS软件中工作,还是因为我缺少了介绍页面或链接?@HansPassant你能详细说明一下我错过了其他好东西吗?UB是什么?MBCS不是任何项目模板中的默认值,你没有告诉我为什么设置错误。MS代码示例假定您按预期使用IDE。UB是“未定义行为”,C和C++代码的一个方面,很容易创建非常困难的诊断错误。继续前进。