
C++
weixin_45731898
这个作者很懒,什么都没留下…
展开
-
C++之继承
有public, protected, private三种继承方式,它们相应地改变了基类成员的访问属性。1.public 继承:基类 public 成员,protected 成员,private成员的访问属性在派生类中分别变成:public, protected, private2.protected 继承:基类 public 成员,protected 成员,p...原创 2020-04-13 09:23:15 · 110 阅读 · 0 评论 -
C++之类访问修饰符
公有(public)成员公有成员在程序中类的外部是可访问的。您可以不使用任何成员函数来设置和获取公有变量的值class line{ public: double length;}int main(){ line line; line.length=10.0;}私有(private)成员私有成员变量或函数在类的外部是不可访问的,甚至是不可查看的。只有类和友元函数可以访...原创 2020-04-13 09:22:50 · 125 阅读 · 0 评论 -
C++之类与对象
定义一个类,本质上是定义一个数据类型的蓝图。这实际上并没有定义任何数据,但它定义了类的名称意味着什么,也就是说,它定义了类的对象包括了什么,以及可以在这个对象上执行哪些操作。类定义是以关键字 class 开头,后跟类的名称。类的主体是包含在一对花括号中。类定义后必须跟着一个分号或一个声明列表。例如,我们使用关键字 class 定义 Box 数据类型,class Box{ public:...原创 2020-04-13 09:22:41 · 131 阅读 · 0 评论 -
C++之输入输出
C++ 的 I/O 发生在流中,流是字节序列。如果字节流是从设备(如键盘、磁盘驱动器、网络连接等)流向内存,这叫做输入操作。如果字节流是从内存流向设备(如显示屏、打印机、磁盘驱动器、网络连接等),这叫做输出操作。头文件函数和描述<iostream>该文件定义了 cin、cout、cerr 和 clog 对象,分别对应于标准输入流、标准输出流、非缓冲标准错...原创 2020-04-13 09:22:23 · 120 阅读 · 0 评论 -
C++之类构造函数与析构函数
类的构造函数是类的一种特殊的成员函数,它会在每次创建类的新对象时执行。构造函数的名称与类的名称是完全相同的,并且不会返回任何类型,也不会返回 void。构造函数可用于为某些成员变量设置初始值。class a{ public: a();}a::a(void){ ;}使用初始化列表来初始化字段:Line::Line( double len): length(len){...原创 2020-04-13 09:22:03 · 73 阅读 · 0 评论 -
C++之友元函数
类的友元函数是定义在类外部,但有权访问类的所有私有(private)成员和保护(protected)成员。尽管友元函数的原型有在类的定义中出现过,但是友元函数并不是成员函数。友元可以是一个函数,该函数被称为友元函数;友元也可以是一个类,该类被称为友元类,在这种情况下,整个类及其所有成员都是友元。如果要声明函数为一个类的友元,需要在类定义中该函数原型前使用关键字 friend#include ...原创 2020-04-13 09:21:54 · 132 阅读 · 0 评论 -
C++之内联函数
C++ 内联函数是通常与类一起使用。如果一个函数是内联的,那么在编译时,编译器会把该函数的代码副本放置在每个调用该函数的地方。对内联函数进行任何修改,都需要重新编译函数的所有客户端,因为编译器需要重新更换一次所有的代码,否则将会继续使用旧的函数。如果想把一个函数定义为内联函数,则需要在函数名前面放置关键字 inline,在调用函数之前需要对函数进行定义。如果已定义的函数多于一行,编译器会忽略 ...原创 2020-04-13 09:21:43 · 152 阅读 · 0 评论 -
C++之继承
当创建一个类时,您不需要重新编写新的数据成员和成员函数,只需指定新建的类继承了一个已有的类的成员即可。这个已有的类称为基类,新建的类称为派生类。// 基类class Shape// 派生类class Rectangle: public Shape访问控制和继承派生类可以访问基类中所有的非私有成员。因此基类成员如果不想被派生类的成员函数访问,则应在基类中声明为 private。...原创 2020-04-13 09:19:14 · 68 阅读 · 0 评论 -
C++之重装载
C++ 允许在同一作用域中的某个函数和运算符指定多个定义,分别称为函数重载和运算符重载。重载声明是指一个与之前已经在该作用域内声明过的函数或方法具有相同名称的声明,但是它们的参数列表和定义(实现)不相同。当您调用一个重载函数或重载运算符时,编译器通过把您所使用的参数类型与定义中的参数类型进行比较,决定选用最合适的定义。选择最合适的重载函数或重载运算符的过程,称为重载决策。在同一个作用域内,可...原创 2020-04-13 09:19:04 · 381 阅读 · 0 评论 -
C++之多态
多态按字面的意思就是多种形态。当类之间存在层次结构,并且类之间是通过继承关联时,就会用到多态。C++ 多态意味着调用成员函数时,会根据调用函数的对象的类型来执行不同的函数。class Shape { protected: int width, height; public: Shape( int a=0, int b=0) { ...原创 2020-04-13 09:18:47 · 101 阅读 · 0 评论 -
C++之数据抽象
数据抽象是指,只向外界提供关键信息,并隐藏其后台的实现细节,即只表现必要的信息而不呈现细节。数据抽象是一种依赖于接口和实现分离的编程(设计)技术。总的说就是应用函数;访问标签强制抽象在 C++ 中,我们使用访问标签来定义类的抽象接口。一个类可以包含零个或多个访问标签:使用公共标签定义的成员都可以访问该程序的所有部分。一个类型的数据抽象视图是由它的公共成员来定义的。使用私有标签定义的成员无...原创 2020-04-13 09:18:30 · 138 阅读 · 0 评论 -
C++之数据封装
所有的 C++ 程序都有以下两个基本要素:程序语句(代码):这是程序中执行动作的部分,它们被称为函数。程序数据:数据是程序的信息,会受到程序函数的影响。封装是面向对象编程中的把数据和操作数据的函数绑定在一起的一个概念,这样能避免受到外界的干扰和误用,从而确保了安全。数据封装引申出了另一个重要的 OOP 概念,即数据隐藏。数据封装是一种把数据和操作数据的函数捆绑在一起的机制,数据抽象是一种仅...原创 2020-04-13 09:18:16 · 142 阅读 · 0 评论 -
C++之指针
指针是一个变量,其值为另一个变量的地址,即,内存位置的直接地址。就像其他变量或常量一样,您必须在使用指针存储其他变量地址之前,对其进行声明。type *var-name;概念描述C++ Null 指针C++ 支持空指针。NULL 指针是一个定义在标准库中的值为零的常量。C++ 指针的算术运算可以对指针进行四种算术运算:++、–、+、-C++ 指针 vs...原创 2020-04-13 09:17:06 · 125 阅读 · 0 评论 -
C++之函数
在 C++ 中,函数由一个函数头和一个函数主体组成。下面列出一个函数的所有组成部分:**返回类型:**一个函数可以返回一个值。return_type 是函数返回的值的数据类型。有些函数执行所需的操作而不返回值,在这种情况下,return_type 是关键字 void。**函数名称:**这是函数的实际名称。函数名和参数列表一起构成了函数签名。**参数:**参数就像是占位符。当函数被调用时,您向...原创 2020-04-13 09:16:40 · 150 阅读 · 1 评论 -
C++之语句
goto 语句允许把控制无条件转移到同一函数内的被标记的语句。注意:在任何编程语言中,都不建议使用 goto 语句。因为它使得程序的控制流难以跟踪,使程序难以理解和难以修改。任何使用 goto 语句的程序可以改写成不需要使用 goto 语句的写法。 LOOP:do { a = a + 1; goto LOOP; }loop是一个标志,可以修改的...原创 2020-04-13 09:16:26 · 92 阅读 · 0 评论 -
C++之存储类
存储类定义 C++ 程序中变量/函数的范围(可见性)和生命周期。这些说明符放置在它们所修饰的类型之前。autoregisterstaticexternmutablethread_local (C++11)从 C++ 17 开始,auto 关键字不再是 C++ 存储类说明符,且 register 关键字被弃用。auto 关键字用于两种情况:声明变量时根据初始化表达式自动推断该变量...原创 2020-04-13 09:13:57 · 132 阅读 · 0 评论 -
C++之修饰符类型
可以不写 int,只写单词 unsigned、short 或 unsigned、long,int 是隐含的。**const:**const 类型的对象在程序执行期间不能被修改改变。**volatile :**修饰符 volatile 告诉编译器不需要优化volatile声明的变量,让程序可以直接从内存中读取变量。对于一般的变量编译器会对变量进行优化,将内存中的变量值放在寄存器中以加快读写效率。...原创 2020-04-13 09:13:37 · 127 阅读 · 0 评论 -
枚举类型
枚举类型(enumeration)是C++中的一种派生数据类型,它是由用户定义的若干枚举常量的集合。如果一个变量只有几种可能的值,可以定义为枚举(enumeration)类型。所谓"枚举"是指将变量的值一一列举出来,变量的值只能在列举出来的值的范围内。创建枚举,需要使用关键字 enum。枚举类型的一般形式为:enum 枚举名{标识符[=整型常数],标识符[=整型常数],…标识符[=整...原创 2020-04-13 09:13:21 · 106 阅读 · 0 评论 -
C++之数据类型
使用编程语言进行编程时,需要用到各种变量来存储各种信息。变量保留的是它所存储的值的内存位置。这意味着,当您创建一个变量时,就会在内存中保留一些空间。存储各种数据类型(比如字符型、宽字符型、整型、浮点型、双浮点型、布尔型等)的信息,操作系统会根据变量的数据类型,来分配内存和决定在保留内存中存储什么这是在C++中见过的宽字符型 wchar_t 等价于 typedef short int...原创 2020-04-13 09:12:46 · 76 阅读 · 0 评论 -
C++之程序结构
实例#include <iostream>using namespace std;int main(){ cout << "Hello World!"; return 0;}C++ 语言定义了一些头文件,这些头文件包含了程序中必需的或有用的信息。**命名空间:**实际上就是一个由程序设计者命名的内存区域,程序设计者可以根据需要指定一些有名字的空...原创 2020-04-13 09:12:32 · 132 阅读 · 0 评论 -
C++之基本语法
C++ 程序可以定义为对象的集合,这些对象通过调用彼此的方法进行交互。现在让我们简要地看一下什么是类、对象,方法、即时变量。**对象 :**对象具有状态和行为。例如:一只狗的状态 - 颜色、名称、品种,行为 - 摇动、叫唤、吃。对象是类的实例。**类 :**类可以定义为描述对象行为/状态的模板/蓝图。**方法 :**从基本上说,一个方法表示一种行为。一个类可以包含多个方法。可以在方法中写入逻...原创 2020-04-10 09:20:43 · 76 阅读 · 0 评论