zzllvlv
2020-06-02 13:55
采纳率: 100%
浏览 451

qt 中结构体添加构造函数后报错

我定义了一个结构体并添加了构造函数:

struct DataInfo{
    GLenum       type;
    const char*  filename;
    int       note;
    DataInfo(){
        type = 0;
        filename = nullptr;
        note = 0;
    }
};

但是在初始化一个结构体时:

DataInfo pain = {1,"../texture/red.file",null};

qt报错:could not convert '{1, "../texture/red.file"}' from 'brace-enclosed initializer list' to 'ShaderInfo'

  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

2条回答 默认 最新

  • 小学狗喵喵叫 2020-06-02 14:27
    已采纳
    struct DataInfo{
        GLenum       type;
        char*  filename;
        int       note;
        DataInfo(GLenum ptype, const char*  pfilename,int pnote){
            type = ptype;
            strcpy(filename,pfilename);
            note = pnote;
        }
    };
    /*************************/
    DataInfo pain((GLenum)1,"../texture/red.file",0);
    
    打赏 评论
  • 爷就是这个范儿 2021-09-29 11:27

    你应该从头好好学一下多态。

    打赏 评论

相关推荐 更多相似问题