摘要: static作用 static的作用主要体现在两个方面: 作用域 生存期 静态局部变量 作用域:函数内部。 生存期:整个程序运行期间。 1 void fun() 2 { 3 static int i = 1; 4 } 静态全局变量 作用域:本文件内部。 生存期:整个程序运行期间。 static in 阅读全文
posted @ 2020-06-27 16:42 Chen沉尘 阅读(422) 评论(0) 推荐(0) 编辑
摘要: 转自humeApz磁盘调度算法——FCFS、SSTF、SCAN、CSCAN 为了减少对文件的访问时间,应采用一种最佳的磁盘调度算法,以使各进程对磁盘的平均访问时间最少。由于在访问磁盘时主要是寻道时间。因此,磁盘调度的目标是使磁盘的平均寻道时间最少。 如磁道请求队列为55、58、39、18、90、16 阅读全文
posted @ 2020-06-23 09:05 Chen沉尘 阅读(12561) 评论(0) 推荐(3) 编辑
摘要: 转自yhjokerVisual Studio中头文件stdafx.h的作用 在 Visual Studio 中(笔者版本 Visual Studio 2017),新生成的C++项目文件的的头文件夹下会默认有头文件stdafx.h,而源文件夹下则默认有源文件stdafx.cpp,手动将这些文件删除后, 阅读全文
posted @ 2020-06-19 12:44 Chen沉尘 阅读(1614) 评论(0) 推荐(0) 编辑
摘要: 转自alice4C++中指针和引用的区别比较 指针 指针是编程语言中的一个对象,它的值是一个地址直接指向内存中另一个地方。 引用 引用就是某一变量(对象)的一个别名,对引用的操作与对变量直接操作完全一样。 指针和引用的区别 1.指针是一个实体,而引用仅是个别名; 2.引用必须被初始化且必须从一而终( 阅读全文
posted @ 2020-06-12 09:08 Chen沉尘 阅读(256) 评论(0) 推荐(0) 编辑
摘要: 基础 C++的类支持三种member function:static,nonstatic,virtual。 nonstatic member function 编译器会将nonstatic member function转换为普通外部函数。 1 #include <iostream> 2 3 usi 阅读全文
posted @ 2020-06-11 13:05 Chen沉尘 阅读(274) 评论(0) 推荐(0) 编辑
摘要: 基础 数据成员分类 static data members 编译器把static data members放在类的对象之外,即将唯一的实体在程序数据区中,当两个类中的static data members同名时,编译器会推导出独一无二的名字。 我们可以通过对象、指针、和类都可以取得static da 阅读全文
posted @ 2020-06-11 10:24 Chen沉尘 阅读(439) 评论(0) 推荐(0) 编辑
摘要: 前言 对于传统结构化语言,如C语言,虽然编译器在背后也做了一下事情,但是很好理解。如编译器堆栈建立、参数排列、返回地址、堆栈清楚等。而对于面向对象的语言,编译器背着我们做了太多,如构造函数、析构函数、虚函数、继承、多态、合成额外函数、扩张我们函数的内容等。 不同的对象模型会有不同的执行效率,因为编译 阅读全文
posted @ 2020-06-10 22:44 Chen沉尘 阅读(392) 评论(0) 推荐(0) 编辑
摘要: 转自princetengC++多线程——读写锁shared_lock/shared_mutex 何为读写锁 相比互斥锁,读写锁允许更高的并行性,互斥量要么锁住状态要么不加锁,而且一次只有一个线程可以加锁。读写锁可以有三种状态: 读模式加锁状态; 写模式加锁状态; 不加锁状态; 只有一个线程可以占有写 阅读全文
posted @ 2020-06-08 15:29 Chen沉尘 阅读(14495) 评论(0) 推荐(0) 编辑
摘要: 需要保护的初始化举例 如对单例模式的初始化。 1 #include <iostream> 2 #include <thread> 3 #include <mutex> 4 5 using namespace std; 6 7 //单例模式 8 class MySingleTon{ 9 public: 阅读全文
posted @ 2020-06-08 14:22 Chen沉尘 阅读(437) 评论(0) 推荐(0) 编辑
摘要: 保护共享数据的最基本的方式,是使用C++标准库提供的互斥量(头文件<mutex>)。当访问共享数据前,使用互斥量将相关数据锁住,再当访问结束后,再将数据解锁。线程库需要保证,当一个线程使用特定互斥量锁住共享数据时,其他的线程想要访问锁住的数据,都必须等到之前那个线程对数据进行解锁后,才能进行访问。这 阅读全文
posted @ 2020-06-08 12:54 Chen沉尘 阅读(940) 评论(0) 推荐(0) 编辑