随笔分类 -  c++学习记录

摘要:istream & istream :: get ( char * , int , char = '\n' ) ;istream & istream :: getline ( char * , int , char = '\n' ) ;作用:从文本中提取指定个数的字符,并在串数组末添加一个空字符其中... 阅读全文
posted @ 2015-03-14 18:45 溈鉨wo乄菰単 阅读(410) 评论(0) 推荐(0)
摘要:各种计算机应用系统通常把一些相关信息组织起来保存在外存储器中,称为文件,并用一个名字(称为文件名)加以标识C++把文件看成无结构的字节流,编码方式: 文本文件 二进制文件存取方式: 顺序文件 随机文件ifstream、ofstream 和 fstream 类用于内存与文件之间的数据传输1.文件操... 阅读全文
posted @ 2015-03-14 18:41 溈鉨wo乄菰単 阅读(429) 评论(0) 推荐(0)
摘要:输入输出流:1. I/O(输入/输出)流类库提供对象之间的数据交互服务 流类库预定义了一批流对象,连接常用的外部设备 程序员可以定义所需的I/O流对象,使用流库提供的工作方式 实现数据传输2.流类和流对象: 程序中,对数据的输入/输出是以字节流实现的 应用程序对字节序列作出各种数据解... 阅读全文
posted @ 2015-03-14 14:49 溈鉨wo乄菰単 阅读(360) 评论(0) 推荐(0)
摘要:1。虚析构函数: 构造函数不能是虚函数。建立一个派生类对象时,必须从类 层次的根开始,沿着继承路径逐个调用基类的构造函数 析构函数可以是虚的。虚析构函数用于指引 delete 运算符正 确析构动态对象2. 定义了基类虚析构函数,基类指针指向的 派生类动态对象也可以正确地用delete析构... 阅读全文
posted @ 2015-03-13 23:22 溈鉨wo乄菰単 阅读(182) 评论(0) 推荐(0)
摘要:1.基类指针虽然获取派生类对象地址,却只能访问派生类从基类继承的成员 1 #include 2 using namespace std; 3 4 //通过基类指针只能访问从基类继承的成员 5 class A 6 { 7 public: 8 A(char x) 9 {10 ... 阅读全文
posted @ 2015-03-13 23:05 溈鉨wo乄菰単 阅读(279) 评论(0) 推荐(0)
摘要:联编是指一个程序模块、代码之间互相关联的过程。 静态联编,是程序的匹配、连接在编译阶段实现,也称为早期匹配。 重载函数使用静态联编。 动态联编是指程序联编推迟到运行时进行,所以又称为晚期联编。 switch 语句和 if 语句是动态联编的例子。普通成员函数重载可表达为两种形式:1. ... 阅读全文
posted @ 2015-03-13 21:51 溈鉨wo乄菰単 阅读(168) 评论(0) 推荐(0)
摘要:类模板: 类模板用于实现类所需数据的类型参数化 类模板在表示如数组、表、图等数据结构显得特别重要, 这些数据结构的表示和算法不受所包含的元素类型的影响类模板由模板说明和类说明构成template 类声明templateclass TClass{ // TClass的成员函数 private ... 阅读全文
posted @ 2015-03-13 21:42 溈鉨wo乄菰単 阅读(116) 评论(0) 推荐(0)
摘要:模板 模板把函数或类要处理的数据类型参数化,表现为参数的多态 性,称为类属。 模板用于表达逻辑结构相同,但具体数据元素类型不同的数据 对象的通用行为。什么是模板:类属 —— 类型参数化,又称参数模板 使得程序(算法)可以从逻辑功能上抽象,把被处理的对象(数据)类型作为参数传递C++提供两... 阅读全文
posted @ 2015-03-13 21:38 溈鉨wo乄菰単 阅读(118) 评论(0) 推荐(0)
摘要:多继承“ 一个类有多个直接基类的继承关系称为多继承 多继承声明语法 class 派生类名 : 访问控制 基类名1 , 访问控制 基类名2 , … , 访问控制 基类名n { 数据成员和成员函数声明 }; 多个基类的派生类构造函数可以用初始式调用基类构造函数初始化数据成员。 执行顺序与单继承... 阅读全文
posted @ 2015-03-12 23:20 溈鉨wo乄菰単 阅读(150) 评论(0) 推荐(0)
摘要:下面的实例是使用继承完成点、圆、圆柱体的层次结构 1 #include 2 using namespace std; 3 #define PI 3.1415926 4 5 class Point 6 { 7 friend ostream& operator x = x; 4... 阅读全文
posted @ 2015-03-12 22:50 溈鉨wo乄菰単 阅读(167) 评论(0) 推荐(0)
摘要:has-A,uses-A 和 is-A has-A : 包含关系,用以描述一个类由多个“部件类”构成。实现has-A关系用类成员表示,即一个类中的数据成员是另一种已经定义的类。 uses-A : 一个类部分地使用另一个类。通过类之间成员函数的相互联系,定义友元或对象参数传递实现。 is... 阅读全文
posted @ 2015-03-11 23:33 溈鉨wo乄菰単 阅读(164) 评论(0) 推荐(0)
摘要:数据类型转换在程序编译时或在程序运行实现 基本类型 ←→ 基本类型 基本类型 ←→ 类类型 类类型 ←→ 类类型 类对象的类型转换可由两种方式说明: 构造函数 转换函数 称为用户定义的类型转换或类类型转换,有隐式调用和显式调用方式 1 class X 2... 阅读全文
posted @ 2015-03-11 22:35 溈鉨wo乄菰単 阅读(122) 评论(0) 推荐(0)
摘要:重载++和--设 A Aobject ;运算符 ++和 - - 有两种方式:前置方式: ++Aobject --Aobject一元 成员函数 重载 A :: A operator++ () ; 解释为: Aobject . operator ++( ) ; 友元函数 重载 friend A op... 阅读全文
posted @ 2015-03-10 22:47 溈鉨wo乄菰単 阅读(220) 评论(0) 推荐(0)
摘要:可以重载的运算符+ - * / % ^ & | ~! = += -= *= /= %^= &= |= > >>= = && || ++ -- ->* ‘ ->[] () new delete new[] delete[]不能重载的算符. :: .* ?: sizeof重载运算符函数可以对运算符作出... 阅读全文
posted @ 2015-03-08 19:16 溈鉨wo乄菰単 阅读(182) 评论(0) 推荐(0)
摘要:类的包含(称为has A)是程序设计中一种软件重用技术。即定义一个新的类时,通过编译器把另一个类 “抄”进来。当一个类中含有已经定义的类类型成员,带参数的构造函数对数据成员初始化,须使用初始化语法形式。构造函数 ( 变元表 ) : 对象成员1( 变元表 ) , … , 对象成员n ( 变元表 ) ;... 阅读全文
posted @ 2015-03-08 02:28 溈鉨wo乄菰単 阅读(168) 评论(0) 推荐(0)
摘要:友元是对类的辅助操作,他能够引用类中被隐藏的信息,使用友元的目的是基于对程序的运行效率,但也带来了一定的安全问题,友元可以是函数也可以是类,友元的关系式非传递的及X是Y的友元,Z是X的友元,但Z不一定是Y的友元友元函数: 1 #include 2 using namespace std ; 3 #i... 阅读全文
posted @ 2015-03-08 01:50 溈鉨wo乄菰単 阅读(104) 评论(0) 推荐(0)
摘要:程序对数据的表示,不但要求存放基本信息,还要表示与其它数据元素的关系线性表是最简单的数据组织形式 1 #include 2 using namespace std; 3 4 //用插入法生成一个有序的链表和约瑟夫问题 5 6 //声明结构类型,结构指针变量 7 struct li... 阅读全文
posted @ 2015-03-07 02:18 溈鉨wo乄菰単 阅读(167) 评论(0) 推荐(0)
摘要:结构体: 结构体是一种特殊形态的类,与类的唯一区别是:类的缺省访问权限是private,而结构体的缺省访问权限是public。另外,结构体存在的主要原因就是与c语言保持兼容。 什么时候用结构体,而不用类呢?主要用来保存数据。而没有什么操作的类型。 人们通常将结构体的数据成员设为共有,因此这时... 阅读全文
posted @ 2015-03-05 21:14 溈鉨wo乄菰単 阅读(806) 评论(0) 推荐(0)
摘要:汉诺塔问题的递归实现。不得不说很复杂,想了一晚上才想通了执行的过程,不知道是哪个伟人想出来的,竟然把递归用的如此出神入化,我等望尘莫及。 1 #include 2 using namespace std; 3 #include 4 5 void move(char x, char y) 6 ... 阅读全文
posted @ 2015-03-05 01:23 溈鉨wo乄菰単 阅读(192) 评论(0) 推荐(0)
摘要:1 #include 2 3 using namespace std; 4 5 //要通过函数调用来改变主调函数中某个变量的值: 6 //(1) 在主调函数中,将该变量的地址或者指向该变量的指针作为实参 7 //(2) 在被调函数中,用指针类型形参接受该变量的地址 8 //(3) 在被调函... 阅读全文
posted @ 2015-03-04 20:04 溈鉨wo乄菰単 阅读(379) 评论(0) 推荐(0)