| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 442 人关注过本帖
标题:[求助]List出了什么问题
只看楼主 加入收藏
eecchhoo
Rank: 1
等 级:新手上路
帖 子:29
专家分:0
注 册:2006-2-24
收藏
 问题点数:0 回复次数:1 
[求助]List出了什么问题

这是一段从别处拷来的一元多项式的代码,请大虾看一下

#include<iostream.h>
#include<list>
struct Term
{
float coef;
int exp_x,exp_y;
Term(float c,int e1,int e2){coef=c;exp_x=e1;exp_y=e2;}
Term(){}

friend int operator==(const Term & L,const Term & T)//项序比较,按x的升幂排列
{
return (L.exp_x==T.exp_x)&&(L.exp_y==T.exp_y);
}
friend int operator >(const Term & L,const Term & T)
{
return ((L.exp_x>T.exp_x)||(L.exp_x==T.exp_x)&&(L.exp_y>T.exp_y));

}
friend int operator <(const Term & L,const Term & T)
{
return ((L.exp_x<T.exp_x)||(L.exp_x==T.exp_x)&&(L.exp_y<T.exp_y));
}
friend Term & operator+=(Term & L,const Term & T)//幂指数对应相同,则系数相加
{
L.coef+=T.coef; return L;
}

friend istream & operator>>(istream & is,Term & T);
friend ostream & operator<<(ostream & os,const Term & T);
friend char compare(const Term & P,const Term & T);
friend Is_Empty(const Term & T){return !T.coef;}

};

char compare(const Term & P,const Term & T)
{
if(P==T) return'=';
else if(P<T) return '<';
else return'>';
}

istream & operator>>(istream & is,Term & T)
{
cout<<"Please input a coefficient!\n";
is>>T.coef;
cout<<"Please input the power of x!\n";
is>>T.exp_x;
cout<<"Please input the power of y!\n";
is>>T.exp_y;
return is;
}

ostream & operator<<(ostream & os,const Term & T)
{
if(T.coef>0) os<<'+';
os<<T.coef<<"x^"<<T.exp_x<<"y^"<<T.exp_y;
return os;
}

template<class ElemType>
class Polynomial
{
public:
Polynomial(const ElemType & P){Stop_flag=P;}
Polynomial(){}
~Polynomial(){}
Polynomial & operator=(const Polynomial & T);
Polynomial & operator+(const Polynomial & T);
friend istream & operator>>(istream & is,Polynomial<ElemType> & T);
friend ostream & operator<<(ostream & os,const Polynomial<ElemType> & T);
private:
List <ElemType> poly;//???????????????????????
//Term<T>*
ElemType Stop_flag;//用于判断多项式结束


};

template<class ElemType>
istream & operator>>(istream & is,Polynomial<ElemType> & T)
{
ElemType elem;
ListItr<ElemType>Itr(T.poly);
cout<<"Creat a Polynomial!\n";
cout<<"Please input coeffcient and power one by one!\n"
while(cin>>elem,!equal_stop(elem,T.Stop_lag)) Itr.Insert(elem);
return is;

}


编译的时候这样报错:
syntax error :missing ';' before '<'

请问:这是不是List引起的,或者应该怎么改动,
我对这一块C++的内容很不了解

搜索更多相关主题的帖子: List 
2006-02-27 10:03
l5y5h5
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2006-2-28
收藏
得分:0 
首先在头文件上就有错误了
在包含头文件语句中,没有“#include<list>”这样的格式的。
再有,如果这是一个单文件的C/C++程序的话,没有主函数,也跟本运行不了。
还有一个list对象的定义问题。。。。。。。。。。。

2006-03-01 01:37
快速回复:[求助]List出了什么问题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.018469 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved