c++
文章平均质量分 63
小小白杨123
享受自己所做的事
展开
-
枚举类型的理解
#include using namespace std;int main(){ enum{ a=0, b, c, }; int i; cin>>i; switch(i) { case a:cout<<"is a"<<endl;break; case b:cout<<"is b"<<endl;break; case c:cout<<"is c"<<endl;break; } return 0;}输原创 2013-07-22 20:46:08 · 578 阅读 · 0 评论 -
第十一章 继承和派生(一)
【项目1】定义点类,并以点类为基类,派生出直线类,从基类中继承的点的信息表示直线的中点。请阅读下面的代码,并将缺少的部分写出来。#include#includeusing namespace std;class Point //定义坐标点类{public: Point():x(0),y(0) {}; Point(double x0, double y0):x(x0), y原创 2013-08-13 08:50:23 · 842 阅读 · 0 评论 -
第十一章 继承和派生(二)
【项目2】(第11章习题9)分别定义Teacher(教师)类和Cadre(干部)类,采用多重继承方式由这两个类派生出新类Teacher_Cadre(教师兼干部)。要求: (1)在两个基类中都包含姓名、年龄、性别、地址、电话等数据成员。 (2)在Teacher类中还包含数据成员title(职称),在Cadre类中还包含数据成员post(职务),在Teacher_Cadre类中还包含数据成员w原创 2013-08-15 20:16:47 · 674 阅读 · 0 评论 -
c++ 之运算符重载(<<,>>)
期待了好久的《c++primer》终于在三天前邮到了,看到这本书时着实吓了一跳:怎么那么厚啊,700多页,跟个板砖似的。计划3个月内看完,一天10页左右,前面都是基本概念,自己暑假里也复习了一遍,可以翻的快一些,多留点精力看后面的。我这个计划做得不是太紧,能在三个月内完成,我就很高兴了,一开始不想给自己太大的压力。看到书里一个例子,直接输入输出对象,运用了运算符重载的知识,自己试了一下,有点小原创 2013-09-01 20:55:21 · 627 阅读 · 0 评论 -
c++多态性与虚函数(一)
//有些结论是自己推测的,如有不对敬请指正。【项目1】根据给出的基类Animal和main()函数。1、根据给出的main()函数和运行结果的提示,设计出相关的各个类,注意观察运行结果,提取出每个类中需要的数据成员,并匹配上需要的成员函数。2、显然,Animal设计为抽象类更合适,Animal不需要能够实例化,是专门作基类使用的。改造程序,使Animal设计为抽象类,这时main()函原创 2013-09-06 21:38:03 · 1755 阅读 · 0 评论 -
c++多态性与虚函数(二)
【项目1】建立专门的数组类处理有关数组的操作 数组是几乎所支持的组织数据的方法。C和C++对数组类型提供了内置支持,使我们利用数组实现软件中需要的各种实用的功能。但是,这种支持仅限于用来读写单个元素的机制。C++不支持数组的抽象abstraction,也不支持对整个数组的操作。例如:把一个数组赋值给另外一个数组,对两个数组进行相等比较或者想知道数组的大小size,等等。对C++而言,数组是从原创 2013-09-06 21:46:08 · 646 阅读 · 0 评论 -
c++多态与虚函数(三)
创建动态链表,补充完整相应的函数。#includeusing namespace std;class Student //结点类{public: Student(int n,double s){num=n;score=s;next=NULL;} ~Student(); Student *next; //指向下一个结点 int num; double score;原创 2013-09-14 21:08:03 · 571 阅读 · 0 评论 -
c++ 头文件相互包含问题
C++中头文件互相包含经常会出现编译错误原创 2014-05-24 15:15:32 · 635 阅读 · 0 评论 -
c与c++中struct区别
这里有两种情况下的区别。(1)C的struct与C++的class的区别。(2)C++中的struct和class的区别。 在第一种情况下,struct与class有着非常明显的区别。C是一种过程化的语言,struct只是作为一种复杂数据类型定义,struct中只能定义成员变量,不能定义成员函数(在纯粹的C语言中,struct不能定义成员函数,只能定义变量)。例如下面的C代码转载 2014-07-19 09:58:03 · 481 阅读 · 0 评论 -
C++ 第九章 关于类和对象的进一步讨论(二)const的用法和指针数据成员
【项目1】下面的程序存在编译错误。有两种方法可以修改,请给出这两种修改方案,在报告中说明你倾向于用哪一种?为什么?处理此类问题的原则是什么?[cpp] view plaincopyprint?#include #include using namespace std; class C { private: int x; public:原创 2013-08-12 08:28:56 · 679 阅读 · 0 评论 -
使用常对象——为共用数据加装一个名为const的玻璃罩
原创案例讲解——”玻璃罩const”系列的三篇文章:1. 使用常对象——为共用数据加装一个名为const的玻璃罩2. 常(const)+ 对象 + 指针:玻璃罩到底保护哪一个3. 对象更有用的玻璃罩——常引用 话题的引入:C++采取了不少有效的措施(如设private保护)以增加数据的安全性,但也可以在不同的场合通过不同的途径访问同一个数据对象。有时在无意之中的误操作转载 2013-08-10 16:39:55 · 589 阅读 · 0 评论 -
c++初步小程序
这几天看见贺老师的c++讲课视频,感觉讲的真好,一年前的今天,我刚刚学完c++,时隔一年,也已经忘得差不多了,一直在用c练习数据结构,c++因此闲置了一年。现在看贺老师的讲课视频,一开始是在中间看了一节,发现我能从中获得令我惊喜的知识,贺老师除了讲授课本知识外,还会把知识和项目联系起来,传授了很多经验,这很适合我的现状,我决定从头老老实实的看一遍,朦朦中有种感觉,c++是种很实用,很重要的语言,因原创 2013-07-29 21:48:07 · 690 阅读 · 0 评论 -
C++如何判断输入的结束 ACM中无输入结束提示时如何判断到达EOF
1.while((scanf"%d,%d",&m,&n)==2) { //... }2.while((scanf"%d,%d",&m,&n)!=EOF) { //... }3.while(cin>>m>>n) { //... }( scanf("%d %d转载 2013-08-01 09:01:55 · 7184 阅读 · 0 评论 -
c++初级之二
【项目1:分段函数求值】从键盘输入x的值(要求为实型),根据以下公式计算并输出x和y 的值。 要求采用两种解法完成,解法1用if-else语句,解法2主体用switch语句(注意到分段的关键点处,x的值均是偶数,这是可以利用的条件)。提示:在这个公式中,x<0是非法的输入,程序中应该做出处理。测试要求:运行至少5次程序,测试程序在所有可能的执行流程中,是否存在错误的处理。下面是参考的报原创 2013-08-01 21:25:55 · 847 阅读 · 0 评论 -
C++初步之三 小项目
【项目1:利用循环求和】求1000以内所有偶数的和要求:请编出3个程序来,分别用三种循环语句完成,注意体会各种循环语句的执行过程及语法特点。//#include using namespace std;int main(){ int i=0,sum=0; //使用for循环 /*for(i=0;i<=1000;i+=2){ sum+=i;原创 2013-08-04 14:08:47 · 1055 阅读 · 4 评论 -
do...while(0)的妙用
在C++中,有三种类型的循环语句:for, while, 和do...while, 但是在一般应用中作循环时, 我们可能用for和while要多一些,do...while相对不受重视。 但是,最近在读我们项目的代码时,却发现了do...while的一些十分聪明的用法,不是用来做循环,而是用作其他来提高代码的健壮性。1. do...while(0)消除goto语句。通常,如果在一个转载 2013-08-05 20:50:15 · 465 阅读 · 0 评论 -
C++第八章 类和对象(一)
【项目2 - 修旱冰场】(Circle类)一个圆形的旱冰场地,场地内抹水泥,造价为每平方米20元,围栏用木条围成,每米造价35元。设计一个Circle类,可以求出圆的面积和边长,进而支持求出旱冰场的等价。请在下面提示的基础上完成程序,其中需要做的工作包括:(1)在类声明中声明相关的公共成员函数;(2)在类声明和main()函数之间,定义声明的成员函数。#include using namesp原创 2013-08-06 22:07:14 · 665 阅读 · 0 评论 -
C++第八章 类和对象(二)
【项目1 - 三角形类】下面设计一个三角形类,请给出各成员函数的定义 #include#includeusing namespace std;class Triangle{public: void Setabc(double x, double y, double z);//置三边的值,注意要能成三角形 void Getabc(double*x, double*y, double*z)原创 2013-08-08 15:49:13 · 654 阅读 · 0 评论 -
C++第九章 类和对象的进一步认识(一)
【项目1】设计三角形类,通过增加构造函数,使对象在定义时能够进行初始化#include#includeusing namespace std;class Triangle{public: Triangle(int ,int,int); ~Triangle(){} double perimeter(void);//计算三角形的周长 double area(void);//原创 2013-08-09 18:04:22 · 689 阅读 · 0 评论 -
C++primer 字符串流操作 p258
int main(){ int val1=512,val2=1024; ostringstream format_message; //add space!!! format_message<<"val1: "<<val1<<"val2: "<<val2<<"\n"; istringstream input_istring(format_message.s原创 2014-06-02 19:33:01 · 683 阅读 · 0 评论