关于c++:简明的c笔记

33次阅读

共计 1583 个字符,预计需要花费 4 分钟才能阅读完成。

1. 公有成员:private

公有成员变量或函数在类的内部是不可拜访的,甚至是不可查看的。只有类和友元函数能够拜访公有成员。在类外面不写是什么类型,默认是 private 的。

就是说如果要拜访公有成员,必须是成员函数才能够拜访,内部不能间接赋值

2. 爱护成员:protected

派生类的定义如下:派生类的成员函数能够被父类给复用

类外不能拜访 protected 成员

3. 构造函数

4. 析构函数

析构函数有助于在跳出程序(比方敞开文件、开释内存等)前开释资源

5. 拷贝构造函数

拷贝构造函数通常用于:

* 通过应用另一个同类型的对象来初始化新创建的对象。* 复制对象把它作为参数传递给函数。* 复制对象,并从函数返回这个对象。


参考链接

6. 友元函数

它有权拜访类的所有公有(private)成员和爱护(protected)成员

参考链接

7. 内联函数

类定义中的定义的函数都是内联函数,即便没有应用 inline 说明符(如何应用,在变量类型后面加一个关键字 inline 就行)
如果一个函数是内联的,那么在编译时,编译器会把该函数的代码正本搁置在每个调用该函数的中央。

8. this 指针

每一个对象都能通过 this 指针来拜访本人的地址,友元没有 this 指针

9. 指向类的指针

10. 动态成员

当咱们申明类的成员为动态时,这意味着无论创立多少个类的对象,动态成员都只有一个正本。动态成员在类的所有对象中是共享的

参考链接

11. 继承(基类和派生类)

一个派生类继承了所有的基类办法,但下列状况除外:

* 基类的构造函数、析构函数和拷贝构造函数。* 基类的重载运算符。* 基类的友元函数。

参考链接

12. 重载运算符和重载函数

重载函数:函数同名但类型不同名 // 留神重载和重写的区别

运算符重载:例如间接实现同一个类的不同成员的相加,间接用运算符重载实现



参考链接

13. 多态

就是派生类继承他的父类可能会重写父类的办法
如果多个派生类都重写了父类的办法,在同一时间内,多个派生都同时应用该办法,可能会呈现抵触,就要在父类中会被重写的办法减少关键字 virtual

14. 纯虚函数

在基类中定义虚函数,以便在派生类中从新定义该函数更好地实用于对象,然而您在基类中又不能对虚函数给出有意义的实现,这个时候就会用到纯虚函数。

参考链接

15. 文件和文件流

参考链接

16. 异样解决

try throw catch

参考链接

17. 动态内存

C++ 程序中的内存分为两个局部:

栈:在函数外部申明的所有变量都将占用栈内存。堆:这是程序中未应用的内存,在程序运行时可用于动静分配内存


参考链接

18. 命名空间


参考链接

19. 模板(泛型的根底)





参考链接

20. 预处理器

预处理器是一些指令,批示编译器在理论编译之前所需实现的预处理。

#include < 库函数名 >
#define __  __预约义宏

参考链接

21. sleep 函数

22. 援用和指针

援用变量是一个别名
参考链接

23. 枚举 enum

24. typedef

typedef int int1;// 给 int1 类型实质就是 int 类型
#define int 
//1、定义一个构造体     
typedef struct A
 {  
    int a ;  
    int b ;
 }A1;

25. #define

#define 与 typedef 的区别

sizeof();
size()
length()
字符串和字符数组字符串是一个类,要应用要申明头文件
#include <string.h>
string a="1234";
字符数组
char arr[6];// 这是一个字符数组,每一个数组元素存取一个 char

数组名字默认的是数组的首地址
arr == &arr[0]
arr[]={1,2,3}; 
申明数组开拓了空间了吗?没有!char arr[6]={'a',b','c'};

26. 构造体

两种定义方法的区别和应用:



将构造体类型作为参数传递给函数

用 typedef 为构造体 struct type_name 取别名,这样在下次申明构造体的时候,就无需加关键字 struct

正文完
 0