c++编程!这个程序是从书上看到的,不知哪方面出了问题,请名位大虾帮下忙啦!详细说下

来源:百度知道 编辑:UC知道 时间:2024/07/02 04:17:13
#include <iostream>
#include <algorithm>
#include <list>
#include <string>
struct Student{
int sid;
std::string name;
double score;
int rank;
};
void printInfo(const Student& s)
{
std::cout<<s.sid<<"\t"<<s.name<<"\t"<<s.score<<"\t"<<s.rank<<std::endl;
}
bool compByScore(const Student& a,const Student& b)
{
return a.score>b.score;
}
int main()
{
Student s[]={{2008001,"Jordan",92},{2008002,"Madonna",75},{2008003,"Jolie",86},{2008004,"Hanks",96},{2008005,"Cruise",80},{2008006,"Beckham",88},{2008007,"Figo",86},{2008008,"Avril",88},{2008009,"raul",86}};
size_t n=sizeof(s)/sizeof(*s);
std::list<Student> 1s;
for(size_t i=0;i!=n

这位大哥。。。首先要问一下这本书叫什么名字 作者是谁 我要把他弄死
相信我这本书绝对是个害人的东西
我已经调了一个小时你这段代码了 看看这时间我容易么我
错误1:没有包含头文件 一般情况下讲 VC6.0环境下必须加一个头文件 "stdafx.h" 除非你进行了设定
错误2:结构体定义的方式决定了不能用={}这种方式初始化 因为里面有一个string类型的变量 除非换成char name[10],即便是这样你也只初始化了三个量
错误3:本人才疏,找遍了msdn,手头的参考书籍也没弄明白std::list<Student>1s 这句话的合理解释 如果非要用模板干嘛不用STL的 比如vector 那个不是更好用?
错误4.。。。。。。。。。。

这个程序个人认为没救了 黔驴技穷了,如果是一个老手写的干嘛还吧没个cout前用std这个域名 如果是个新手的话那么这个太高端了 不是您能接受的了的 劝您别看了

奉劝如果是新手请扔掉这本书,感谢(千万别是钱能写的吧,那本C++程序设计教程害我不浅的说。。。)

很多错误哦,是不是书上叫你找错哦?
呵呵。。
std::很明显就用得不对了
还有;符号的使用

上面说的那些都不是什么错
stdafx根本用不着, 结构体初始化没问题, std::的使用没问题

这就是你抄写的错误。 最明显的就是所有的 1s 都肯定是抄写错, 估计人家原本写的是 ls 前面是 字母l, 而不是数字1

别的抄写错误有没有不确定。 把这些 1s都改过来然后看看再有编译错误的话贴一下

程序这么写不是害人吗 看着头疼