解决error C2664: no instance of constructor "CFileDialog::CFileDialog" matches the list

Posted 芯魂

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了解决error C2664: no instance of constructor "CFileDialog::CFileDialog" matches the list相关的知识,希望对你有一定的参考价值。

      VS2010默认配置里,使用的是UNICODE字符。

解决方法:项目上右击->属性,左边:配置属性->常规,右边:项目默认值->字符集,将UNICODE字符集改成多字节字符集。

PS:MFC里有两个宏,UNICODE和_UNOCODE控制UNICODE定义,都涉及到NICODE字符,非UNICODE字符定义为"目标字符串";

UNICODE字符,字义为L"目标字符串";

MFC里的另外的宏,自动进行了此解析,_T(x),__T(x),TEXT(x),x是字符串:"目标字符串"。对应的,把char换成TCHAR 

以上是关于解决error C2664: no instance of constructor "CFileDialog::CFileDialog" matches the list的主要内容,如果未能解决你的问题,请参考以下文章