1."const char *" 类型的实参与 “char *” 类型的形参不兼容错误的解决方法
解决方法:(3)
1.在VS2019中依次点击项目->属性->C/C+±>语言->符合模式,将原来的“是”改为“否”即可。
2.在声明变量 char* 时改成 const char *即可。
3.
- //1.const char* ->char *
- const char *pcc = "goodidea";
- char *pc = new char[strlen(pcc)+1];
- strcpy(pc, pcc);
-
- //2.const char* ->char *
- const char* aa = "this is a const string.";
- char* bb = const_cast<char*>(aa);
-
- //3.char* ->const char*
- const char* pcc;
- char* pc="abcde";
- pcc=pc;
-
C++ pthread pthread.h 中的 timespec 和time.h 中的 结构定义重复了 ,同时两个头文件中的条件编译条件不同,所以造成结构重复定义,简单快速见效的解决方法就是注释pthread.h 头文件中的struct timespce 定义.
3.C1189 #error: Building MFC application with /MD[d] (CRT dll version) requires MFC shared dll version. Please #define _AFXDLL or do not use /MD[d] (编译源文件 src\HX101.cxx) law C:\Program Files (x86)\Microsoft VisualStudio\2019\Community\VC\Tools\MSVC\14.29.30133\atlmfc\include\afx.h 24
在项目属性页中 选择“常规” 在“MFC的使用”中将“使用标准Windows库”改为“在共享DLL中使用MFC”。
4.C2664 “int M“const char [15]”转换为“LPCWSTR”
强制转换
5.E0167 "const char *" 类型的实参与 "const char *" 类型的形参不兼容
TEXT("TEXT")
6.C2664 "char []" 转换为 "LPCWSTR"
强制转换(LPCWSTR)
7.从“WCHAR [260]”转换为“const char *”
8.引用dll报错:error C2491-不允许 dllimport 静态数据成员 的定义
// C2491.cpp
// compile with: /c
// function definition
void __declspec(dllimport) funcB() {} // C2491
// function declaration
void __declspec(dllimport) funcB(); // OK
9.d8016 /ZI和/Gy-命令行不兼容
10. MSB6011 传递给 Microsoft.Build.CPPTasks.Link 任务的参数无效。
11.C2039 _file 不是_iobuf的成员
获取文件长度:
nLen = _filelength(fSqlFile->_file);
nLen = ftell(fSqlFile);
12.无法解析外部符号 _inet_addr@4
#pragma comment(lib,"ws2_32.lib")
13.LINK2001 无法解析的外部符号:"public: static struct QMetaObject const QwtPlot::staticMetaObject" (?staticMetaObject@QwtPlot@@2UQMetaObject@@B)
14.设置中“不同选项” 这个要去掉,不然会造成工程设置后无法保存已做的设置。
15.元素
16:WId与HWND 的转换
HWND hwnd = (HWND)widget->winId();
17错误C2664:'int wsprintfW(LPWSTR,LPCWSTR,...)':无法将参数1从'char [15]'转换为'LPWSTR'
18.无法连接_mysql_num_rows@4
如19在属性页->链接器->输入中 添加libmysql.lib
19.LNk2019无法解析的外部符号
1.h文件
h文件设置: C/C++ ->常规->附加包含目录:
2.lib文件
lib导入设置: 链接器->输入->附加依赖项:
给lib一个搜索路径: 链接器->常规->附加库目录:
3.dll文件
20.D8036 不允许有多个源文件
c/C++->输出文件:对象文件名只能是目录,
C/C++ ->输出文件:
ASM $(SolutionDir)BaseEnv\temp\$(ProjectName)\
对象文件名 $(SolutionDir)BaseEnv\temp\$(ProjectName)\
程序数据库文件名$(SolutionDir)BaseEnv\temp\$(ProjectName)\
21 C1189
1.工程-》属性-》C/C++-》代码生成-》运行时库:修改成: 多线程调试(/MTd); (release版本也修改成 多线程(/MT)
2.工程-》属性-》常规-》MFC的使用:修改为:在静态库中使用 MFC
3.C/C++-》预处理 _AFXDLL