这篇文章给大家聊聊关于C++代码报错C2664,以及错误代码252对应的知识点,希望对各位有所帮助,不要忘了收藏本站哦。
一、三洋空调故障代码
三洋CR-C253GH5、CR-V453DHL8故障代码:E01串行信号的接收故障(遥控器检测到来自室外机的异常信号)E02串行信号的发送故障(遥控器检测到来自室外机的异常信号)E03室内机检测到遥控器或机组控制的异常E04串行信号的接收故障(室内机检测到来自室外机的异常信号)E05串行信号的发送故障(室内机检测到来自室外机的异常信号)E06串行信号的接收故障(室外机检测到来自室内机的异常信号)E07串行信号的发送故障(室外机检测到来自室内机的异常信号)E08室内机组地址设定重复E09遥控器地址(RCUADR)重复E10串行信号的发送故障E11串行信号的接收故障E14当弹性组合控制时主室内机地址设定重复E15被判断的室内机组容量或室内机组的容量大小E16被判断的室内机组容量或室内机组的容量太小E17串行信号的发送故障E18串行信号的接收故障F01不能探测室内热交换器温度(E1=TH2)F02不能探测室内热交换器温度(E2=TH3)F04不能探测室外排气温度F06不能探测室外热交换器的液体温度(C1=TH0E)F07不能探测室外热交换器的气体温度(C2=TH0C)F08室外空气温度无法监测F09热保护开关动作F10不能探测室内温度F29存储器IC(EEPROM)不正常H01压缩机过载H02压缩机锁定、卡死H03压缩机电流检测电路异常H04热保护开关动作H05热保护开关检测不到H06低压开关动作H17电源电压不平衡H18压缩机通道有异响L01室内机组群地址错误L02室内机组的型号设定与室外机组不匹配L03当用机组群控制时,主要室内机组地址设定错误L04室外机组地址错误L07室内机组之间的错误接线L08室内机组地址(或机组群地址)没有设定L09室内机组的容量码没有设定L11机组群控制线的错误接线L13室内机组的型号设定错误(容量)P01室内风机热保护动作P02室外风机热保护动作压缩机热保护动作电源电压异常(L和N之间电压不在160v到260v之间)P03压缩机的排气温度异常P04高压开关动作P05电源反相或电压下降P09CN9CN35未插好P10内机活动开关动作P31其它室内机组的警告三洋空调的柜机故障代码P系列P01室内风机保护恒温器P02室外风机保护恒温器/压机保护恒温器/电压异常。P03异常的放电温度P04高压开关。P05反相或不良相位。P09面板的线路连接不当。P10浮动开关。三洋空调故障代码H系列H1压机马达超载;H2压机马达被锁定;H3压机电流检测电路异常;H9压机接触器保护;H10电压不平衡保护;H11CT检测电路不正常;H12电流值不正常被锁定;H18压机接触器振动。H19压机接触器振动,过热保护。
二、C++代码报错C2664
你好,我也正好在学这个问题,下面我的分析和解决方案。
你的代码里存在两个问题,第一个问题的本质是vector类的初始化问题,第二个问题的本质是两个类的声明定义顺序问题。第二个问题你并没有提出,但在一些编译器中会报错。
我先解决你的提出的问题,也就是第一个问题
std::vector<Screen>screens{Screen(24,80,'')};
这句话最核心的部分编译器是这么理解的:
vector<Screen> screens(Screen(24, 80,''))
即初始化一个vector对象screens,给的初始值是一个Screen类。那么,编译器首先会把给的Screen类转化为vector类,再赋值给screens。问题在于,我们定义的Screen类中并没有说明Screen类和vector类的转化关系,因此会报错。
但我们希望的是将给的Screen类作为screens的一个元素,故这里编译器没能理解我们的意图,如果你手头有《C++ primier中文版第五版》的话,建议你看一下第87页关于vector类的初始化的内容,这页表格里的第二行是编译器的理解方式。如果我们要让编译器按我们的想法看问题,只用将代码修改为:
std::vector<Screen>screens{1,Screen(24,80,'')};
这样初始化过程编译器会理解为,将给定的Screen类作为vector对象screens的第一个元素来初始化screens,就不会报错了。
这样的修改是基于你使用的编译器不要求类声明顺序的情况,如果你看了我说的,在尝试的过程中出现了未定义类声明之类的错误,说明你这次使用的编译器要求声明顺序(我用VS2013默认的编译器就出现了问题)。那么你首先要解决我说的第二个问题。这时对程序的修改会有些不一样。
我在看到你的问题时,首先用你的代码试着编译(VS2013默认编译器)了一下,报错如下:
你的Window_mgr类定义在类Screen之后,但在Screen中又要声明Window_mgr中的clear成员函数作为友元。对于一些对声明顺序有强制要求的编译器,这是无法接受的。
因此,Window_mgr的定义应该在Screen之前,头文件中的开头部分代码修改为:
#include<iostream>
#include<string>
#include<vector>
classScreen;//先声明Screen类
classWindow_mgr//再定义Window_mgr类
{
public:
usingScreenIndex=std::vector<Screen>::size_type;
voidclear(ScreenIndex);
private:
std::vector<Screen>screens{Screen(24,80,'')};
};
classScreen//最后定义Screen类
{//这之后的代码不变
这样的修改参照了C++Primier中文版第五版 252页的意见。
再次编译,错误如下:
显然,改变定义顺序,虽然解决了前面提到的第一个错误,但是在Window_mgr定义时,Screen的构造函数还未定义,因此,对Window_mgr中screens数据成员的初始化最好使用构造函数。在Window_mgr中声明构造函数Window_mgr(),在头文件后面定义这一函数,这样的话头文件的代码是这样。
开头:
中间Screen部分不变,
结尾:
到这里,声明顺序的问题已经解决,然后关于vector类型初始化的问题只用把结尾这句修改为
真·结尾:
就可以了,这样修改的理由我在最开始已经说明。
总的来说,你提出的问题的核心是关于vector类的初始化,这个问题你看我最开始几段就解决了,然后如果编译器严格要求声明顺序,那么你需要看完全部内容,才可以通过编译。
希望我的回答可以解决你的问题。
三、消防厅通话代码
■事故报
001不能出场
002交通事故
003中途车辆故障不能行驶
004职业团员的重大的公务灾害
005对职员的加害(包括车)
006活动中一般人受伤
007公共设施
008同一事后火灾
■出场报告
151救护指定中队指挥队特命队
152派遣队累配・移动队
153转战出场
154(空白)
156(空白)
157出场晚了(附加理由)
158到达延迟(交通・道口)
■现场报告
251现场报告(附加状况)
252逃迟了或者需要救助者
253水利变更(部门・可能水利)254现场待命255认知报告(状况附加)256延烧危险小257特殊车不能活动258现场撤回(最终)
■通报、联络关系551现场电话552无线波切换553传真发送(使用波附加)554报警555打电话556警报鸣响关怀557恶作剧558错误报告
■福利关系651独居老人652卧床不起的老人653残疾人654(空白)655烂醉如泥的人656(空白)657(空白)658地址不定者
■急救相关751重要管制中752拒绝收容753归署后有线754名人755消防队员(包括家属)756(空白)757(空白)758(空白)851自损852社会死亡状态853妇科疾病854成人病855感染症856痴呆症857精神病858(空白)
■原因信息等951纵火952放火的嫌疑953玩火954级火灾955因火灾等造成的伤者999集体行动等
■其他?761信息收集体制762信息收集体制763信息收集体制764信息收集体制