c++类与对象简单实例的一个问题

1.#include<iostream.h>2.constmaxCard=100;3.enumbool{false,true};4.classSet{5.public:6... 1. #include <iostream.h>
2. const maxCard = 100;
3. enum bool {false, true};
4. class Set {
5. public:
6. void EmptySet (void) { card = 0; }
7. bool Member (const int);
8. void AddElem (const int);
9. void RmvElem (const int);
10. void Copy (Set&);
11. bool Equal (Set&);
12. void Intersect (Set&, Set&);
13. void Union (Set&, Set&);
14. void Print (void);
15. private:
16. int elems[maxCard]; // 集合元素
17. int card; // 集合元素个数
18. };

表10-3 注释

2. MaxCard 表示集合中的最大元素个数
6. EmptySet通过设置集合中的元素个数为0,清除集合中的内容
7. Member 检查一个给定的数是否是集合中的元素
8. AddElem增加一个新的元素到集合中,如果该元素已经在集合中,则集合保持不变,否则,在不使集合溢出的前提下,插入该元素
9. RmvElem删除集合中的一个元素
10. Copy复制一个集合到另一个集合
11. Equal检查两个集合是否相等,两个集合相等的条件是:两个集合所包含的元素是完全相同的
12. Intersect比较两个集合,生成一个新的集合,且该集合的元素同时包含在另外两各集合中。例如,集合{2,5,3}和{7,5,2}通过Intersect运算后,生成的集合为{2,5}
13. Union比较两个集合,生成一个新的集合,且该集合的元素包含另两个集合的全部元素。例如,集合{2,5,3} 和 {7,5,2}通过union 运算后,生成的集合为{2,5,3,7}
14. Print打印一个集合。例如,包含元素5, 2, 和10的集合打印为{5,2,10}
16. elems 数组表示集合元素
17. card 表示集合中元素的个数

以上为类的定义代码,程序本身功能很简单,就不贴后面的代码了。

看上面的代码 第二句 maxCard没有定义类型
第三句 vc2008报错如下:
1>d:\学习资料\c++\vc\learn\learn\learn.cpp(7) : error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int
1>d:\学习资料\c++\vc\learn\learn\learn.cpp(8) : error C2332: “enum”: 缺少标记名
1>d:\学习资料\c++\vc\learn\learn\learn.cpp(8) : error C2628: “<unnamed-tag>”后面接“bool”是非法的(是否忘记了“;”?)
1>d:\学习资料\c++\vc\learn\learn\learn.cpp(8) : error C2143: 语法错误 : 缺少“;”(在“{”的前面)
1>d:\学习资料\c++\vc\learn\learn\learn.cpp(8) : error C2447: “{”: 缺少函数标题(是否是老式的形式表?)

请问这是什么问题?该怎么解决?
//教材本身已经用了一个月,没有任何错误,今天这东西让我彻底懵了
展开
 我来答
冷漠鉴客
2011-08-30 · TA获得超过178个赞
知道答主
回答量:113
采纳率:0%
帮助的人:84.3万
展开全部
const maxCard = 100;给maxCard一个类型int,或者用内联函数定义。枚举enum中,bool类型是c++语言库里面的,名字应该不符合要求。
更多追问追答
追问
注释点enum可以正常运行 但是书上的代码有这一行,所以不懂了
追答
你不需要定义enum bool{false,true}啊,直接在类的私有成员里bool 一个变量就可以,试试看,能不能!
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式