c++中错误 1 error C2679: binary '=' : no operator found which takes a right-hand operand
答案:2 悬赏:60 手机版
解决时间 2021-02-05 11:56
- 提问者网友:半生酒醒
- 2021-02-04 20:38
c++中错误 1 error C2679: binary '=' : no operator found which takes a right-hand operand
最佳答案
- 五星知识达人网友:夜风逐马
- 2021-02-04 22:03
你main函数里的那几个赋值语句是学的那个语言的语法,c++里可没有这个,你那个小括号里的东西其实是个逗号运算表达式,最后返回了最后那个数字,
你的这句 s[0] = ("Tom", "m", 88);
实际上是 s[0] = 88;
上面错误的意思是你的Student结构没有对=运算符进行重载,
你可以这样写 s[0] = Student("Tom", "m", 88);
但前提是,你得先写一个有这三个参数的构造函数,还得实现拷贝构造函数,及=运算符重载;
如果没看明白,就去看C++书,多学习学习,看看类对象的构造及对象的赋值操作,以及运算符重载;记住这个编译错误,你以后会经常遇见的。
你的这句 s[0] = ("Tom", "m", 88);
实际上是 s[0] = 88;
上面错误的意思是你的Student结构没有对=运算符进行重载,
你可以这样写 s[0] = Student("Tom", "m", 88);
但前提是,你得先写一个有这三个参数的构造函数,还得实现拷贝构造函数,及=运算符重载;
如果没看明白,就去看C++书,多学习学习,看看类对象的构造及对象的赋值操作,以及运算符重载;记住这个编译错误,你以后会经常遇见的。
全部回答
- 1楼网友:七十二街
- 2021-02-04 22:26
具体的编程过程呢、?追问
主要问题就在这块。。。
主要问题就在这块。。。
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯