随笔分类 -  C++基础

上一页 1 2 3 4 下一页

6、多态性-1、多态性概述
摘要:面向对象程序设计的真正力量不仅仅在于继承,而在于将派生类对象当基类对象一样处理的能力。支持这种能力的机制称为多态和动态绑定。 1、多态是指同样的消息被不同类型的对象接收时导致不同的行为,所谓消息是指对类的成员函数的调用,不同的行为是指不同的实现,也就是调用了不同的函数。 2、多态类型 面向对象的多态 阅读全文

posted @ 2017-01-04 00:36 gary_123 阅读(484) 评论(0) 推荐(0) 编辑

5、继承与派生6-虚基类
摘要:当某类的部分或全部直接基类是从另一个共同基类派生而来时,在这些直接基类中从上一级共同基类继承来的成员就拥有相同的名称。在派生类的对象中,这些同名数据成员在内存中同时拥有多个拷贝,同一个函数名会有多个映射。我们可以使用作用域分辨符来惟一标识并分别访问他们,也可以将共同基类设置为虚基类,这时从不同的路径 阅读全文

posted @ 2017-01-04 00:35 gary_123 阅读(528) 评论(0) 推荐(0) 编辑

5、继承与派生5-派生类成员的标识和访问
摘要:围绕派生类吸收基类成员,改造基类成员和添加新成员的过程,主要讨论派生类使用过程中的一些问题,在派生类中,成员可以按访问属性划分为四种: 1)不可访问的成员 这是从基类私有成员继承而来的,派生类或是建立派生类对象的模块都没有办法访问到他们,如果从派生类继续派生新类,也是无法访问的。 2)私有成员 这里 阅读全文

posted @ 2016-12-29 16:47 gary_123 阅读(498) 评论(0) 推荐(0) 编辑

5、继承与派生4-派生类的构造和析构函数
摘要:派生类的构造函数只负责对派生类新增的成员进行初始化,对所有从基类继承下来成员,其初始化工作还是由基类的构造函数完成。同样,对派生类对象的扫尾、清理工作也需要加入新的析构函数。 1、构造函数 构造派生类的对象时,就要对基类数据成员、新增数据成员和成员对象的数据成员进行初始化。派生类的构造函数需要以合适 阅读全文

posted @ 2016-12-29 16:44 gary_123 阅读(585) 评论(0) 推荐(0) 编辑

5、继承与派生3-类型兼容规则
摘要:1、类型兼容规则是指在需要基类对象的任何地方,都可以使用公有派生类的对象来替代。通过公有继承,派生类得到了基类中除构造函数、析构函数之外的所有成员。这样公有派生类实际就具备了基类的所有功能,凡是基类能解决的问题,公有派生类都可以解决。类型兼容规则中所指的替代包括以下的情况: a、派生类的对象可以赋值 阅读全文

posted @ 2016-12-29 15:37 gary_123 阅读(335) 评论(0) 推荐(0) 编辑

5、继承与派生2-访问控制
摘要:基类的自身成员可以对基类中任何一个其他成员进行访问,但是通过基类的对象,就只能访问该基类的公有成员。 由于继承所导致的原来具有不同访问属性的基类成员在派生类中的访问属性也有所不同,这里说的访问来自两个方面:一是派生类中的新增成员访问从基类继承的成员;二是在派生类外部(非类族内的成员),通过派生类的对 阅读全文

posted @ 2016-12-29 12:51 gary_123 阅读(431) 评论(0) 推荐(0) 编辑

5、继承与派生1-派生类的定义
摘要:1、在c++中,派生类的一般定义语法为: class 派生类名:继承方式 基类名1,继承方式 基类名2,...,继承方式 基类名n { 派生类成员声明; }; 定义一个Dr1从基类Base1、Base2派生而来的新类: class Dr1:public Base1,private Base2 { p 阅读全文

posted @ 2016-12-29 11:49 gary_123 阅读(730) 评论(0) 推荐(0) 编辑

4-数组、指针与字符串1.6-字符串
摘要:在c语言中是使用字符型数组来存放字符串,c++程序中也仍然可以沿用这种方法;不仅如此,标准c++库中还预定义了string类。 1、用字符数组存储和处理字符串 a、字符数组的声明和引用 eg: #include<iostream> using namespace std; int main() { 阅读全文

posted @ 2016-12-28 23:32 gary_123 阅读(139) 评论(0) 推荐(0) 编辑

4-数组、指针与字符串1.5-深拷贝与浅拷贝
摘要:默认的拷贝构造函数并不总是适宜的,因为它完成的只是浅拷贝。 eg:对象的浅拷贝 #include<iostream> using namespace std; class Point { //类的定义 } class ArrayOfPoints { //类的定义 } int main() { int 阅读全文

posted @ 2016-12-28 16:42 gary_123 阅读(246) 评论(0) 推荐(0) 编辑

4-数组、指针与字符串1.4-动态内存分配
摘要:这种在程序运行过程中申请和释放的存储单元也称为堆对象,申请和释放过程过程一般称为建立和删除。 1、new运算和delete运算 运算符new的功能是动态分配内存,或者称为动态创建堆对象,语法形式为: new 类型名T(初值列表);//用于申请分配存放T类型数据的内存空间,并使用初值列表中给出的值进行 阅读全文

posted @ 2016-12-28 16:41 gary_123 阅读(354) 评论(0) 推荐(0) 编辑

4-数组、指针与字符串1.3-this指针
摘要:this指针时一个隐含于每一个类的成员函数中的特殊指针(包括构造函数和析构函数),它用于指向正在被成员函数操作的对象。 this指针明确地指出了成员函数当前所操作的数据所属的对象。实际过程是,当通过一个对象调用成员函数时,系统先将该对象的地址赋给this指针,然后调用成员函数,成员函数对对象的数据成 阅读全文

posted @ 2016-12-28 10:33 gary_123 阅读(332) 评论(0) 推荐(0) 编辑

4-数组、指针与字符串1.2
摘要:指针 动态内存分配和管理离不开指针。 1、内存空间的访问方式 在c++中程序如何利用内存单元存取数据?有两种方式:变量名和地址。 2、指针变量的声明 指针变量永不存放内存单元地址的。 声明的语法形式: 数据类型 *标识符; 所有指针的值都是默认是unsigned long int 型。 指针可以指向 阅读全文

posted @ 2016-12-23 17:11 gary_123 阅读(185) 评论(0) 推荐(0) 编辑

4-数组、指针与字符串1.1
摘要:c++的数组类型为同类型对象的组织提供了一种有效的形式。 由于使用字符数组表示的字符串有不足之处,因此标准c++库中提供了string类,这是通过类库来扩展数据类型的一个很好的典范。 1、数组 数组是用于存储和处理大量同类型数据的数据结构。 数组是具有一定顺序关系的若干对象的集合体,组成数组的对象称 阅读全文

posted @ 2016-12-23 17:02 gary_123 阅读(334) 评论(0) 推荐(0) 编辑

3-C++程序的结构1.5
摘要:多文件结构和编译预处理命令 1、c++程序的一般组织结构 通常一个项目至少划分为三个文件:类定义文件(*.h文件)、类实现文件(*.cpp文件)和类的使用文件(*.cpp,主函数文件)。如下: 这三个单独的源文件构成,他们的相互关系和编译、连接过程,如下 2、外部变量和外部函数 a、为了使变量除了在 阅读全文

posted @ 2016-12-23 15:35 gary_123 阅读(266) 评论(0) 推荐(0) 编辑

3-C++程序的结构1.4
摘要:共享数据的保护 对于既需要共享、又需要防止改变的数据应该声明为常量。 1、常引用 如果在声明引用时用const修饰,被声明的引用就是常引用。常引用所引用的对象不能被更新。声明形式如下: const 类型说明符 &引用名; 2、常对象 常对象时这样的对象,它的数据成员值在对象的整个生存期间内不能被改变 阅读全文

posted @ 2016-12-23 13:47 gary_123 阅读(445) 评论(0) 推荐(0) 编辑

3-C++程序的结构1.3
摘要:类的友元 一个类之外的函数,又与该类有特殊关系! 友元关系提供了不同类或对象的成员函数之间、类的成员函数与一般函数之间进行数据共享的机制。通俗地说,友元关系就是一个类主动声明那些其他类或函数是它的朋友,进而给他们提供对本类的访问特许。 在一个类中,可以利用关键字friend将其他函数或类声明为友元。 阅读全文

posted @ 2016-12-23 13:05 gary_123 阅读(285) 评论(0) 推荐(0) 编辑

3-C++程序的结构1.2
摘要:对象的生存周期 可以分为静态生存周期和动态生存周期 1、静态生存周期 如果对象的生存期与程序的运行期相同,我们称它具有静态生存期。在文件作用域中声明的对象都具有静态生存期的。如果要在函数的块中声明具有静态生存期的对象,则要使用关键字static。 2、动态生存期 除了上述两种情况,其余的对象都具有动 阅读全文

posted @ 2016-12-23 12:29 gary_123 阅读(169) 评论(0) 推荐(0) 编辑

3-C++程序的结构1.1
摘要:数据的共享和保护机制是C++的重要特性之一。 1、标识符的作用域与可见性 作用域讨论的是标识符的有效范围,可见性是讨论标识符是否可以被引用。 a、作用域 作用域是一个标识符在程序正文中有效的区域。C++中标识符的作用域有函数原型作用域、块作用域(局部作用域)、类作用域和文件作用域。 1)函数原型作用 阅读全文

posted @ 2016-12-23 10:11 gary_123 阅读(217) 评论(0) 推荐(0) 编辑

2-类与对象1.4
摘要:组合 在面向对象程序设计中,可以对复杂对象进行分解、抽象,把一个复杂对象分解为简单对象的组合,由比较容易理解和实现的部件对象装配而成。 实际上类的成员数据既可以是基本类型也可以是自定义类型,当然也可以是类的对象。 类的组合描述的就是一个类内嵌其他类的对象作为成员的情况,他们之间的关系是一种包含与被包 阅读全文

posted @ 2016-12-22 22:15 gary_123 阅读(243) 评论(0) 推荐(0) 编辑

2-类与对象1.3
该文被密码保护。

posted @ 2016-12-22 11:21 gary_123 阅读(1) 评论(0) 推荐(0) 编辑

上一页 1 2 3 4 下一页

导航

< 2025年3月 >
23 24 25 26 27 28 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 29
30 31 1 2 3 4 5

统计

点击右上角即可分享
微信分享提示