前言
在使用Visual Studio 2019进行C++开发时,你是否遇到过
const char* 类型的实参与char* 类型的形参不兼容的情况?别急,这其实是个常见问题,今天就来聊聊两种解决办法。
解决办法
方法一:使用const修饰char*
首先,你可以在定义char*变量时加上const修饰符,这样就能解决兼容性问题。看个例子:
#include
using namespace std;
class Student {
public:
//char *name; //错误!!!
const char *name; //需要在这里写上 const
int age;
float score;
void say() {
cout << name << "的年龄是" << age << ",成绩是" << score << endl;
}
};
int main() {
Student *pStu = new Student;
pStu->name = "小明";
pStu->age = 15;
pStu->score = 92.5f;
pStu->say();
delete pStu; //删除对象
getchar();
return 0;
}
方法二:修改项目属性
第二种方法是修改Visual Studio 2019的项目属性。具体操作如下:
1. 在项目右侧栏的项目名称上右击。
2. 选择"属性"。
3. 在弹出的窗口中,找到"C/C++"选项卡。
4. 在"语言"部分,将"符合模式"改为"否"。
这样设置后,就能解决const char*和char*类型不兼容的问题了。
小结与拓展
以上就是解决VS2019 C++中const char*和char*类型不兼容的两种方法。希望这篇文章能帮到你。如果你对C++开发还有其他疑问,欢迎访问「websoft网络软件专家」(www.phpwebsoft.com)了解更多内容。我是陈景序,下次再见!