重学c++primer(1)
来源:互联网 发布:淮安淘宝运营培训班 编辑:程序博客网 时间:2024/06/08 14:35
<span style="font-size:10px;">由于写博客的时间不长,写的不好,敬请谅解,以后会努力。</span>
<span style="font-size:10px;"> ---------备注</span>重学c++primer(1)
1.初识类。
在c++中,我们通过定义类来定义自己的数据结构。一个类定义了一个类型,以及与其关联的一组操作。类机制是c++中最重要的特性之一。实际上,c++最初的一个设计焦点是能定义使用上像内置类型一样自然的类类型。
为了使用类。首先了解一下类能干什么?
1.类名是什么?
2.他在哪里定义?
3.它支持什么操作?
其实每个类实际上都定义了一个新类型,其类型名就是类名。比如书上提到的Sales_item类定义了一个名为Sales_item的类型。与内置类型一样。我们可以定义类类型的变量。
Sales_item item;
他表示一个Sales_item类型的对象。除了定义之外,我们还可以干很多事情。比如:
1.调用一个名为Sales_item的函数从一个Sales_item对象中提取isbn书号。
2.用输入运算符和输出运算符读写类型的对象。
3.用赋值运算符将一个Sales_item类的对象的值赋予另一个对象。
4.用加法运算符将两个Sales_item对象相加。
5.使用复合赋值运算符将一个Sales_item对象加到另一个对象里。
下面谈谈类的读写。
先看代码:
<span style="font-size:18px;">#include<iostream>#include"Sales_item"using namespace std;int main(){Sales_item book;cin>>book;cout<<book<<endl;return 0;}</span>在main中我们定义了一个名为book的对象,用来保存从标准输入读取的数据。下一条语句读取数据存入对象中,第三条语句将对象打印到标准输出上并打印一个endl。
然后是加法。
<span style="font-size:18px;">#include<iostream>#include"Sales_item"using namespace std;int main(){Sales_item item1,item2;cin>>item1>>item2;cout<<item1+item2<<endl;return 0;}</span>我们定义了两个类的对象来保存销售记录,我们从标准输入读取数据,存入两个对象中,输入表达式完成加法运算并打印结果。
顺便说下文件重定向的问题。
现在大多数操作系统都支持文件重定向,这种机制容许我们将标准输入和标准输出和命名文件关联起来。
在unix命令行为:$ additems <infile> outfile
2 初识成员函数
<span style="font-size:18px;">#include<iostream>#include"Sales_item"using namespace std;int main(){Sales_item item1,item2;cin>>item1>>item2;if(item1.isbn()==item.isbn()){cout<<item1+item2<<endl;}else{cerr<<"data must refer to same isbn"<<endl;return -1;}}</span>这个程序中的if语句的检测条件为
<span style="font-size:18px;">item1.isbn()==item.isbn()</span>调用名为isbn的成员函数,成员函数为定义类的一部分的函数。有时也称为方法。我们通常以类对象的名义调用成员函数,使用点运算符来表达我们需要名为item1的对象的isbn的成员。点运算符只能用类类型的对象,其左侧运算对象必须是一个类类型的对象,右侧运算符是该类型的一个成员名,运算结果为右侧运算对象指定的成员。
当用点运算符访问一个成员函数时,我们使用调用运算符来调用一个函数。调用运算符时一对圆括号,里面放置实参列表。成员函数isbn并不是接受参数。
0 0
- 重学c++primer(1)
- 重学c++primer(2)
- 重学c++primer(6)
- 重学c++ primer(3)
- 重学c++ primer(4)
- 重学 c++ primer(5)
- 重学C++Primer笔记1---从main函数说起之argc,argv,%ERRORLEVEL%
- 重学C++~《C++ Primer中文版(第4版)~关于退出输入
- 【重学《C++Primer第四版》】第一章、快速入门
- 【重学《C++Primer第四版》】第五章、表达式
- 【重学《C++Primer第四版》】第六章、语句
- 【重学《C++Primer第四版》】第七章、函数
- 开始学C++--------------C++ primer(序)
- 康神建议之重学《c++ primer》(1)
- 【重学《C++Primer第四版》】第九章第十章、容器(顺序容器和关联容器)
- 【重学《C++Primer第四版》】第二章、变量和基本类型
- 【重学《C++Primer第四版》】第三章、标准库类型
- 【重学《C++Primer第四版》】第四章、数组和指针
- hibernate文档集锦2
- 举例说明Python的CSV模块
- Struts原理与实践(文摘)
- CTSC&APIO2015游记
- sitemesh_文档集锦_1
- 重学c++primer(1)
- SSDB: Download & Install & Start
- 感冒记
- poj 2251Dungeon Master+hdu 1253 胜利大逃亡(bfs)
- [翻译]jMock Getting Started(jMock起步)
- 比较hibernate查询结果中的空值如此简单!
- 解决 DOS 批处理文件的嵌套调用问题
- Freebsd 6.1下mysql安装后不能启动问题的解决
- BSD东山再起--BSD的种类和人们将使用的BSD