C++入门3--类的默认成员函数
目录:1.类的6个默认成员函数2.构造函数3.析构函数4.拷贝构造函数5.赋值运算符重载 1.类的6个默认成员函数一个空类中难道真的是什么都没有吗?当然不是,其实编译器会自动生成6个默认成员函数。 默认成员函数: 用户没有显示实现,编译器会自动生成的成员函数称为默认成员函数 6个成员函数有:1.构造函数(是初始化一个对象) 2.析构函数(完成对对象的空间的释放) 3.拷贝构造函数(同类对象初始化创建 对象,初始化创建至关重要,这是拷贝构造函数的核心定义所在) 4.复制重载是把一个对象的值赋值给另一个对象(这两个对象都是先前已经存在的)。 2.构造函数2.1构造函数的概念构造函数是一个特殊的成员函数。 1、名字和类名相同 2、创建类类型对象的时候由编译器自动调用,以保证每一个数据成员都有一个合适的初始值 3、在对象整个生命周期里只调用一次。 2.2构造函数的特性构造函数是特殊的成员函数,虽然名字叫构造,但是构造函数的主要任务并不是开辟空间,而是初始化对象。 其主要特征如下 1.函数名与类名相同 2.没有返回值 3.支持函数重载 4...
C++入门2--类和对象基础
目录:1.类的引入2.类的定义3.类的访问限定符以及封装4.类的作用域5.类的实例化6.类的对象大小的计算7.类成员函数的this指针 1.类的引入在c语言中结构体里面只能定义变量,但是在c++中结构体中不仅可以定义变量,也可以定义函数,举一个例子: 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465Stack.h文件#pragma once#include<iostream>#include<cstdlib>#include<cassert>using namespace std;typedef int DataType;struct Stack//这里写的是一个栈,栈的特点就是后进先出{ void Init(size_t DataType);//size_t是一种无符号整数 void Push(DataType x); DataType ...
C++入门1--命名空间、引用与函数重载
主要内容:1.命名空间2.c++的输入与输出3.缺省参数4.函数重载5.引用6.内联函数7.auto关键字8.基于范围的for循环9.空指针–nullptr 1.命名空间1.1为什么要有命名空间呢?:1.全局作用域里面的变量,类(后面会提到的)和函数的名称可能会与 关键字 冲突 2.在进行一个大工程的时候,通常是几个程序原分开写一部分功能,然而当几个文件合并的时候,那些定义在全局域里面的变量,类,核函数名称可能会相互冲突,所以就引出了我们的命名空间 1.2命名空间的作用: 命名空间就是对标识符的名称进行本地化,以避免命名冲突或者名字污染。 1.3命名空间的定义: 命名空间需要一个关键词namespace(顾名思义,命名空间),然后接上你给这个命名空间取的名字,最后再加上{}即可。 1234567891011121314#define _CRT_SECURE_NO_WARNINGS 1namespace rxj//命名空间内部可以定义函数/变量/类型{ int rand = 10; namespace rxj2//命名空间可以嵌套 { ...
