04 2021 档案
摘要:一、递归函数 看如下递归函数: 1 int f(int n){ 2 if(n == 1){ 3 return 1; 4 } 5 return f(n - 1) + 1; 6 } 客户端调用该递归函数时传入n = 5, 返回的函数值为5。那么它的调用堆栈(call stack)是怎么样的?又是如何计算
阅读全文
摘要:一、Lambda表达式定义 二、Lambda捕获方式 三、Lambda使用 1 void main() 2 { 3 int a = 1, b = 2; 4 auto fn1 = []() {std::cout << "fn1\n"; }; 5 // auto fn1 = []() {std::cou
阅读全文
摘要:一、lock_guard和unique_lock锁 在并发编程中,我们常常使用标准库中的mutex互斥对象实现线程同步;但是如果在开发中裸用mutex对象,当某个线程锁住临界资源或临界区且在未解锁的情况下异常退出,那么其他线程将始终无法访问临界资源或临界区。lock_guard和unique_loc
阅读全文

浙公网安备 33010602011771号