error: C2664: “zajiao::zajiao(const zajiao &)”: 无法将参数 1 从“const char [12]”转换为“char *”

时间:2022-11-05 20:54:44

原本打算在QT用一个字符串"ABCDEF12345"作为类zajiao的构造函数的参数,用来创建类zajiao的对象zajiao1。

zajiao zajiao1("ABCDEF12345");

结果提示:

F:\Users\denggelin\Documents\qtduojicheng\main.cpp:31: error: C2664: “zajiao::zajiao(const zajiao &)”: 无法将参数 1 从“const char [12]”转换为“char *”

在QT环境下,如何实现const char []转换为char *呢?

创建类zajiao的对象zajiao1上方,增加4条语句即可:

     QString str="ABCDEF12345";//创建字符串

     char* ch;//创建指针

     QByteArray ba = str.toLatin1();//创建类QByteArray的对象

     ch=ba.data();//赋值

     zajiao zajiao1(ch);