luqingfei@C++
为中华之崛起而崛起!
兼听则明,偏听则暗。
类的操作练习题二
接类的操作练习题一
编写一个函数,比较两个序列。如果Sequence对象有不同的长度,它们就是不同的,如果Sequence对象有相同的长度,但对应的值不同,它们也是不同的。只有Sequence对象有相同的长度,且对应的值也相同,它们才是相同的。把这个函数编写为Sequence类的一个成员。
Sequence.h
//
Sequence.h
#ifndef SEQUENCE_H
#define
SEQUENCE_H
//
Class encapsulating a sequence of integers
class
Sequence {
public
:
Sequence();
//
Default constructor
Sequence(
int
start,
int
length
=
2
);
//
Constructor
~
Sequence();
//
Desctructor
void
show();
//
Output a sequence
bool
equals(
const
Sequence
&
seq)
const
;
//
Compare this sequence with another
private
:
int
*
pSequence;
//
Pointer to a sequence
int
length;
//
Sequence length
};
#endif
Sequence.cpp
//
Sequence.cpp
//
Implementation of the Sequence class
//
encapsulating an arbitrary length sequence of integers
#include
"
Sequence.h
"
#include
<
iostream
>
#include
<
iomanip
>
using
std::cout;
using
std::endl;
//
Default constructor
Sequence::Sequence() {
length
=
10
;
pSequence
=
new
int
[length];
for
(
int
i
=
0
; i
<
length; i
++
)
pSequence[i]
=
i;
}
Sequence::Sequence(
int
start,
int
length) {
this
->
length
=
length
<
2
?
2
: length;
pSequence
=
new
int
[length];
for
(
int
i
=
0
; i
<
length; i
++
)
pSequence[i]
=
start
+
i;
}
//
Destructor
Sequence::
~
Sequence() {
cout
<<
"
Destructor called.
"
<<
endl;
delete[] pSequence;
}
//
Output a sequence
void
Sequence::show() {
for
(
int
i
=
0
; i
<
length; i
++
) {
if
(i
%
10
==
0
)
cout
<<
endl;
cout
<<
std::setw(
2
+
(pSequence[
0
]
+
length)
/
10
)
<<
pSequence[i];
}
cout
<<
endl;
}
//
Comparison
bool
Sequence::equals(
const
Sequence
&
seq)
const
{
if
(length
!=
seq.length)
return
false
;
for
(
int
i
=
0
; i
<
length; i
++
)
if
(pSequence[i]
!=
seq.pSequence[i])
return
false
;
return
true
;
}
main.cpp
#include
<
iostream
>
#include
<
cstdlib
>
#include
<
ctime
>
using
std::cout;
using
std::endl;
#include
"
Sequence.h
"
void
main() {
const
int
nSeq
=
5
;
Sequence
**
pSequences
=
new
Sequence
*
[nSeq];
pSequences[
0
]
=
new
Sequence(
5
,
6
);
pSequences[
1
]
=
new
Sequence(
5
,
5
);
pSequences[
2
]
=
new
Sequence(
5
,
6
);
pSequences[
3
]
=
new
Sequence(
5
,
5
);
pSequences[
4
]
=
new
Sequence(
4
,
8
);
for
(
int
i
=
0
; i
<
4
; i
++
)
for
(
int
j
=
i
+
1
; j
<
5
; j
++
)
cout
<<
endl
<<
"
sequences[
"
<<
i
<<
"
]
"
<<
((pSequences[i]
->
equals(
*
pSequences[j]))
?
"
is
"
:
"
is not
"
)
<<
"
equal to
"
<<
"
sequences[
"
<<
j
<<
"
].
"
;
cout
<<
endl;
//
First delete the Sequence objects in the free store
for
(
int
j
=
0
; j
<
nSeq; j
++
)
delete pSequences[j];
delete[] pSequences;
//
Now delete the array holding their addresses
}
posted on 2009-03-18 17:53
luqingfei
阅读(257)
评论(0)
编辑
收藏
引用
所属分类:
C++基础
只有注册用户
登录
后才能发表评论。
【推荐】100%开源!大型工业跨平台软件C++源码提供,建模,组态!
相关文章:
使用lib.exe生成.lib文件
如何区分导入库和静态库
lib文件
[转]动态链接库、静态库、import库区别
智能指针auto_ptr运用实例:常数型智能指针的特性
智能指针auto_ptr运用实例:移转拥有权的行为
C++入门经典:(一)基本概念
make工具的用法
什么是Makefile
虚函数、多态性 练习题一
网站导航:
博客园
IT新闻
BlogJava
知识库
博问
管理
导航
C++博客
首页
新随笔
联系
聚合
管理
<
2009年2月
>
日
一
二
三
四
五
六
25
26
27
28
29
30
31
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
1
2
3
4
5
6
7
统计
随笔 - 105
文章 - 0
评论 - 31
引用 - 0
留言簿
(6)
给我留言
查看公开留言
查看私人留言
随笔分类
(109)
ACM/ICPC(3)
(rss)
Books(4)
(rss)
C++基础(31)
(rss)
MFC
(rss)
Win32汇编程语言序设计(21)
(rss)
Windows(6)
(rss)
Windows SDK
(rss)
反汇编(1)
(rss)
汇编语言基础学习(22)
(rss)
计算机基础知识(3)
(rss)
开发工具(1)
(rss)
软件工程(4)
(rss)
生活(1)
(rss)
数据结构与算法(5)
(rss)
团队(1)
(rss)
文摘(3)
(rss)
游戏开发(3)
(rss)
随笔档案
(105)
2013年7月 (4)
2012年5月 (3)
2011年2月 (1)
2011年1月 (2)
2010年11月 (7)
2010年10月 (2)
2010年9月 (10)
2010年8月 (34)
2010年7月 (11)
2010年6月 (3)
2009年4月 (5)
2009年3月 (10)
2009年2月 (13)
Blogers
batch 共享空间
Codes of Sephiroth
doing5552
flyman
itech
jackyxinli
玩音频播放器的猫咪
kevinlynx
lai3d
luqingfei@.net
megax
mzty
netboy
oxft
汇编高手
SpringSnow
tonykee
tx7do
盖莫游戏引擎
汇编语言 - IT群技术论坛
孔雀
轮子哥
罗朝辉(飘飘白云)
帅子
我住包子山
小时候可靓了
游戏大观
站在大世界
Game
17173
游戏开发资源网
Life
刘思妍
青青精品儿童服饰
清泉户外网
小辉的视频库
NodeJs
Node入门
Python
Python
Useful Webs
80x86汇编语言
boost.org
VC 驿站
woaidongmao
山地车
编程爱好者
科学网
农行贷款计算器
思维导图
大牛
云风的 BLOG
搜索
积分与排名
积分 - 207575
排名 - 126
最新评论
1. re: 虚函数、多态性 练习题一
评论内容较长,点击标题查看
--luz
2. re: Win32汇编--图形操作--GDI原理
感谢
--11
3. re: Win32汇编--需要了解的基础知识
哇,哥,连书里的内容都打上了,这花了不少时间吧
。。。。。。
--solq
4. re: [转]各种字符编码方式详解及由来(ANSI,GB2312,GBK,UNICODE,UTF-8)
哥们写得不错,易懂
--wsh
5. re: 类继承练习题一
评论内容较长,点击标题查看
--scor
6. re: Win32汇编--图形操作--GDI原理
好,十分有用
--Jet
7. re: 数学的魅力:取余运算还可以这样
我也认为数学真的是很美的
--replica watches
8. re: 汇编语言--使用BIOS进行键盘输入和磁盘读写
评论内容较长,点击标题查看
--abcgril
9. re: 10个小故事(转自罗云彬的编程乐园)
好故事啊,学习啦!
--pa
10. re: 数学的魅力:取余运算还可以这样
我也是数学迷..
--designer handbags
11. re: [转]Windows下22个实用的代码编辑器
gVim 挺好用的
--coreBugZJ
12. re: Win32汇编--使用资源--菜单和加速键
初学的汇编(用NASM),仰慕!!
--coreBugZJ
13. re: 我的天哪!感冒-->鼻炎-->咽喉炎
评论内容较长,点击标题查看
--可靠上
14. re: 初识exe程序反汇编小感[转][未登录]
好文章,挺详细的
--KK
15. re: C++标准程序库—自修教程与参考手册
评论内容较长,点击标题查看
--yh
16. re: 《C++入门经典》(第3版)
评论内容较长,点击标题查看
--路青飞
17. re: [转]Windows下22个实用的代码编辑器
评论内容较长,点击标题查看
--路青飞
18. re: 我的天哪!感冒-->鼻炎-->咽喉炎
评论内容较长,点击标题查看
--路青飞
19. re: 《汇编语言》--读后感
评论内容较长,点击标题查看
--路青飞
20. re: [转]Windows下22个实用的代码编辑器
一直用emacs
--Sephiroth Lee
阅读排行榜
1. 汇编语言--call和ret指令 (24399)
2. 汇编语言--int指令(15442)
3. Win32汇编--使用MASM(10794)
4. 一个简单的游戏服务器框架(6151)
5. 初识exe程序反汇编小感[转](5917)
6. 汇编语言--标志寄存器 (5132)
7. 汇编语言--使用BIOS进行键盘输入和磁盘读写(5030)
8. [转]Windows下22个实用的代码编辑器(4721)
9. Windows环境变量设置(4618)
10. Win32汇编--使用资源--对话框(一)(4342)
11. Win32汇编--图形操作--GDI原理(4097)
12. Win32汇编--使用资源--对话框--在对话框中使用子窗口控件(2)(4084)
13. 使用lib.exe生成.lib文件(4049)
14. 汇编语言--寄存器(内存访问)(3985)
15. Win32汇编--使用资源--菜单和加速键(3517)
16. 10个小故事(转自罗云彬的编程乐园)(3114)
17. Win32汇编--分析窗口程序(2923)
18. C++实现插入排序(升序+降序)(2923)
19. Win32汇编--使用资源--版本信息资源(2757)
20. 汇编中常见的一些错误信息(2732)
评论排行榜
1. 汇编语言--端口(4)
2. 《汇编语言》--读后感(4)
3. 我的天哪!感冒-->鼻炎-->咽喉炎(3)
4. [转] 工作到底是为了什么?(2)
5. 虚函数、多态性 练习题一(2)
6. [转]Windows下22个实用的代码编辑器(2)
7. Win32汇编--图形操作--GDI原理(2)
8. 数学的魅力:取余运算还可以这样(2)
9. C++标准程序库—自修教程与参考手册 (1)
10. Win32汇编--需要了解的基础知识(1)
11. [转]各种字符编码方式详解及由来(ANSI,GB2312,GBK,UNICODE,UTF-8)(1)
12. 10个小故事(转自罗云彬的编程乐园)(1)
13. 类继承练习题一(1)
14. 《C++入门经典》(第3版)(1)
15. 汇编语言--使用BIOS进行键盘输入和磁盘读写(1)
16. 初识exe程序反汇编小感[转](1)
17. Win32汇编--使用资源--菜单和加速键(1)
18. Win32汇编--使用资源--图标和光标(0)
19. Win32汇编--使用资源--位图(0)
20. Win32汇编--使用资源--对话框(一)(0)