QT程序突然出现未标识的变量

在QT编程中,作者遇到在添加新类后出现变量未标识的错误,同时提示文件编码问题。经过排查,问题根源在于编码格式。作者尝试修改QT文本编辑器的UTF-8BOM设置,但未解决问题。最终通过将文件另存为Unicode再转为UTF-8的方式解决了编码错误,使得程序恢复正常运行。这个过程提醒开发者注意编码格式对程序的影响。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

QT 5.9.9本来程序运行的很正常,我新加了一个类后保存了一下后就突然显示我有一个变量未标识,当时感觉很懵逼,那个变量就在.h文件中定义的,用ctrl+鼠标左键也能找到它,而且我也没对它进行修改,怎么就突然变成未标识的了?

而且在那个错误的上方有一些警告:
Cxxx:该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为unicode格式防止数据丢失。

为了解决这个问题我进行了几次尝试:
一、将QT中的文本编辑编码修改:
具体操作为:QT->工具->选项->文本编辑器->行为->utf-8 BoM,将这个选项改为"如果编码是UTF-8则添加"。
结果:并未改变。(可能是我的电脑不起作用,不同的电脑结果可能不同,也不复杂,可以一试。)

二、将包含那个变量的.h文件用记事本打开然后另存为,编码方式选择unicode,文件名不变,直接覆盖掉源文件,然后打开QT发现出现了新的错误,接着再将那个.h文件用记事本打开,另存为时编码方式选择UTF-8编码,再次覆盖掉那个.h文件,这次再用QT打开就可以运行了。

总结:我不确定为什么会出现这个错误,可能是我写另外一个类后保存时点了某个地方? 主要问题还是出在编码方式上,yysy,我第一次看到这个错误时心中是绝望的,但是稍微查一查资料还是可以解决的,毕竟我改的不多嘛。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

记绘衣

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值