错误1error C2679: binary '=' : no operator found which takes a right-hand operand of type 'int' (or there is no acceptable conversion)
怎么修改啊?
你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个回答 2012-11-28
具体的编程过程呢、?追问
主要问题就在这块。。。