C++错误:“const char *“ 类型的值不能用于初始化 “char *“ 类型的实体

在VS2017中使用opencv编写C++程序时出现如下错误:


报错代码如下:
char* image_window = "Source Image";
char* result_window = "Result window";
查了查资料,可能的原因是在VS2017版本中使用这种char*的表达方式会造成程序崩溃,所以VS2017对其进行了控件管理。
解决方案:
1、先将字符使用字符数组进行存储,再使用指针
char image[] = "Source Image";
char result1[] = "Result window";
char* image_window = image;
char* result_window = result1;
2、在前面加上const
const char* image_window = "Source Image";
const char* result_window = "Result window";
3、右键project -> 属性 -> C/C++ -> 语言 -> 符合模式:否
4、对变量进行强转
char* image_window =(char*) "Source Image";
char* result_window = (char*)"Result window";
 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值