上一页 1 2 3 4 5 6 7 8 ··· 13 下一页
  2020年2月22日
摘要: this指针是一个const指针,它指向当前对象,通过它可以访问当前对象的所有成员。 this只能用在类的内部,通过this可以访问类的所有成员,包括private, protected, public属性的。 上述例子中成员函数的参数和成员变量重名,只能通过this区分。 this虽然用在类的内部 阅读全文
posted @ 2020-02-22 23:53 xiaobaizzZ 阅读(122) 评论(0) 推荐(0) 编辑
摘要: 析构函数 析构函数:是一种特殊的成员函数,没有返回值,不需要程序员显式调用,而是在销毁对象是自动执行。 注意:析构函数没有参数,不能被重载,一个类只有一个析构函数,如果没有定义,编译器会自动生成一个默认的析构函数。 注意:用new分配内存时会调用构造函数,用delete释放内存时会调用析构函数。 析 阅读全文
posted @ 2020-02-22 20:52 xiaobaizzZ 阅读(574) 评论(0) 推荐(0) 编辑
摘要: 构造函数 构造函数:是一种特殊的成员函数,它的名字和类名相同,没有返回值,不需要用户显式调用,而是在创建对象时自动执行。 构造函数必须是public属性的,否则创建对象时无法调用。并且构造函数没有返回值。 构造函数的重载 一个类可以有多个重载的构造函数,创建对象时根据传递的实参来判断调用哪一个构造函 阅读全文
posted @ 2020-02-22 20:35 xiaobaizzZ 阅读(199) 评论(0) 推荐(0) 编辑
摘要: 类是创建对象的模板,不占用内存空间,不存在于编译后的可执行文件中。 对象是实实在在的数据,需要内存来存储,对象被创建时会在栈区或者堆区分配内存。 include include using namespace std; class Student{ private: string m_name; i 阅读全文
posted @ 2020-02-22 20:02 xiaobaizzZ 阅读(2325) 评论(0) 推荐(2) 编辑
摘要: 内联函数 函数调用是有时间和空间开销的。程序在执行一个函数之前需要将实参、局部变量、返回地址以及若干寄存器都压入栈中,然后才能执行函数体中的代码;执行完之后,还要将之前压入栈中的数据都出栈,才能接着执行函数调用位置以后的代码。 如果函数体代码比较多,需要较长的执行时间,那么函数调用机制占用的时间可以 阅读全文
posted @ 2020-02-22 15:06 xiaobaizzZ 阅读(287) 评论(0) 推荐(0) 编辑
  2020年2月21日
摘要: 如果一个指针指向的内存没有访问权限,或者指向一块已经释放的内存,那么就无法对该指针进行操作,这样的指针称为野指针。 规避野指针 指针变量如果暂时不需要赋值,以定要初始化为nullptr,因为任何指针变量被创建时不会自动成为nullptr,它的缺省值是随机的。 当指针指向的内存被释放时,要将指针的值设 阅读全文
posted @ 2020-02-21 22:31 xiaobaizzZ 阅读(409) 评论(0) 推荐(0) 编辑
摘要: 在进程的地址空间中,代码区、常量区、全局数据区的内存在程序启动时就已经分配好了,它们大小固定,不能由程序员分配和释放,只能等程序运行结束由操作系统回收,这称为静态内存分配。 栈区和堆区的内存在程序运行期间可以根据实际需要来分配和释放,不用在程序刚启动就备足所有内存。这称为动态内存分配。 堆和栈的区别 阅读全文
posted @ 2020-02-21 22:26 xiaobaizzZ 阅读(373) 评论(0) 推荐(0) 编辑
摘要: 函数的调用和栈是分不开的。 栈帧/活动记录 当发生函数调用时,会将函数运行需要的信息全部压入栈中,这常常被称为栈帧(Stack Frame)或活动记录(Activate Record)。 活动记录一般包含以下几个方面: 1.函数的返回地址,也就是函数执行完成后从哪里开始执行后面的代码。 func() 阅读全文
posted @ 2020-02-21 22:06 xiaobaizzZ 阅读(1086) 评论(0) 推荐(0) 编辑
摘要: 程序的虚拟地址空间分为多个区域,栈是其中地址较高的一个区域。 栈可以存放函数参数、局部变量、局部数组等作用范围在函数内部的数据,它的作用就是完成函数的调用。 栈的概念 栈溢出(Stack Overflow) 对于每个程序来说,栈能使用的内存是有限的,一般是1M 8M,这在编译时就已经决定了,程序运行 阅读全文
posted @ 2020-02-21 21:42 xiaobaizzZ 阅读(681) 评论(0) 推荐(0) 编辑
摘要: 进程 一个具有一定独立功能的程序在一组数据集合上的一次动态执行过程。 进程最显著的特点是拥有独立的地址空间。 内核模式 内核空间存放的是操作系统内核代码和数据,是被所以程序共享的。 操作系统禁止用户进程直接访问内核空间。 用户进程调用系统调用(System Call)来访问内核空间。 用户模式 用户 阅读全文
posted @ 2020-02-21 21:24 xiaobaizzZ 阅读(432) 评论(0) 推荐(0) 编辑
上一页 1 2 3 4 5 6 7 8 ··· 13 下一页