摘要:
目录Linux基本命令简单认识shell认识命令的基本格式:内建命令与外部命令查看命令的类型-type查看命令的使用方法-helpmkdirpwdtouchecho认识路径lscd认识热键/linux热键treenanocatgccstatrmrmdir基本认识--创建目录权限linux有多少条指令 阅读全文
摘要:
shared_future、async、packaged_task、promise、future、atomic、CAS、condition_variable、condition_variable_any、unique_lock、recursive_timed_mutex、this_thread、hardware_concurrency、yeild、sleep_for、sleep_until、wait_for、wait_until、duration、time_point、system_clock、steady_clock、 阅读全文
摘要:
目录<future>future模板类成员函数:promise类promise的使用例程:packaged_task模板类例程:async模板函数例程:shared_future模板类 <future> 标准库提供了一些工具来获取异步任务(即在单独的线程中启动的函数)的返回值,并捕捉其所抛出的异常。 阅读全文
摘要:
目录<condition_variable>condition_variable类类方法生产者消费者模型 -- 阻塞队列单条件变量版condition_variable_any模板类区别优缺点 <condition_variable> 条件变量是C++11提供的另外一种用于等待的同步机制,它能阻塞一 阅读全文
摘要:
目录<mutex>std::call_once函数例程:使用call_once实现的单例模式std::mutex类 -- 独占互斥锁成员函数std::recursive_mutex类 -- 递归互斥锁使用注意:描述:std::timed_mutex类 -- 超时互斥锁描述:成员函数:std::rec 阅读全文
摘要:
目录<atomic>原子操作的概念CAS实现原理CAS操作的伪代码:使用CAS完成变量的原子操作:CAS 操作的保证lock和锁的概念atomic模板类构造函数公共成员函数:atomic与互斥锁的效率比对 <atomic> C++11提供了一个原子类型std::atomic,通过这个原子类型管理的内 阅读全文
摘要:
目录<thread>this_thread命名空间1. get_id()2. sleep_for()3. sleep_until()4. yield()thread类构造函数:类方法1. get_id()2. join()3. detach()4. joinable()5. operator=6. 阅读全文
摘要:
目录<chrono>时间间隔duration常用的duration时间点time_point时钟system_clock & steady_clocksystem_clock代码举例steady_clock例程:转换函数1.duration_castDescription:duration支持隐式转 阅读全文
摘要:
目录智能指针场景引入 - 为什么需要智能指针?内存泄漏什么是内存泄漏内存泄漏的危害内存泄漏分类如何避免内存泄漏智能指针的使用及原理RAII简易例程智能指针的原理智能指针的拷贝问题智能指针的发展历史std::auto_ptr模拟实现auto_ptr例程:这种方案存在的问题:Boost库中的智能指针un 阅读全文
摘要:
目录一、多态基础虚函数虚函数的继承虚类/虚基类重写/覆盖条件:概念:多态的条件其他的多态行为多态中子类可以不写virtual协变代码举例继承遗留问题解决析构函数具体解决方式:题目1答案:解析:题目2答案:C++11 override和finalfinal功能1:禁用继承使用场景:功能2:禁用重写使用 阅读全文
摘要:
继承 目录继承继承继承的访问权限子类赋值给父类赋值兼容规则“天然”的行为验证:1. 其他权限继承能否支持赋值兼容规则2.是否"天然",有没有产生临时变量继承中的作用域继承的隐藏参数继承的构造函数继承的拷贝构造继承的operator=继承的析构函数析构顺序析构的特殊处理坑:为什么析构函数需要特殊处理继 阅读全文
摘要:
目录数组和指针多维数组的物理结构证明数组a和&a不同数组与指针的差别之一什么时候数组名表示整个数组?数组训练理解指针与数组的题所有的数组,都可以看成一维数组.所有的数组传参,最终都会降维成一维数组函数函数的地址函数的规范内存管理malloc返回给用户的只有申请内存的起始地址,那free是如何准确释放 阅读全文
摘要:
预处理 目录预处理一、宏定义数值宏常量字符串宏常量用define宏定义注释符号?程序的编译过程预处理中宏替换和去注释谁先谁后?如何写一个更可靠的宏函数do-while-zero结构do-while-zero的评价宏定义中的空格宏只能在main函数上面定义吗?宏的作用范围#undef宏替换是在函数调用 阅读全文
摘要:
原理剖析 阅读全文
摘要:
C总结与剖析:关键字篇 目录C总结与剖析:关键字篇变量1.变量:内存上的某个位置开辟的空间2.变量的初始化3.为什么要有变量4.局部变量与全局变量5.变量的大小由类型决定6.任何一个变量,内存赋值都是从低地址开始往高地址1.1 关键字auto1.2 关键字register什么样的变量可以采用regi 阅读全文
摘要:
题目:递归实现排列型枚举 把 1∼n这n个整数排成一行后随机打乱顺序,输出所有可能的次序。 输入格式 一个整数n。 输出格式 按照从小到大的顺序输出所有方案,每行 1个。 首先,同一行相邻两个数用一个空格隔开。 其次,对于两个不同的行,对应下标的数一一比较,字典序较小的排在前面。 数据范围 1≤n≤ 阅读全文
摘要:
递归实现指数型枚举 从 1∼n 这 n 个整数中随机选取任意多个,输出所有可能的选择方案。 输入格式 输入一个整数 n。 输出格式 每行输出一种方案。 同一行内的数必须升序排列,相邻两个数用恰好1个空格隔开。 对于没有选任何数的方案,输出空行。 各行(不同方案)之间的顺序任意。 数据范围 1≤n≤1 阅读全文
摘要:
空格/换行输入 末尾两个空格等于换行 空格输入方法: 使用全角英文的空格 使用 这样的标记 标题 (注:#号后加空格后面就是标题) # 1 一个#号就代表1号标题 ## 2 两个#号就代表2号标题 ### 3 #号越多字越小 #### 4 标题需要在#号后空一格才生效 ##### 5 举 阅读全文
摘要:
#include<iostream> class Base { public: int x; }; class Derive : public Base { int y; }; void fun(Base* b) { b[1].x = 1; } int main() { Derive arr[5]; 阅读全文