八股文 八股deque std

std::thread 三:条件变量(condition_variable())

condition_variable 、 wait 、 notify_one 、 notify_all *:notify_one:通知(唤醒)一个线程 *:notify_all:通知(唤醒)多个线程 #include <iostream> #include <thread> #include <mu ......

std::thread 二:互斥量(带超时的互斥量 timed_mutex())

timed_mutex 、 try_lock_for 、 try_lock_until #include <iostream> #include <thread> #include <mutex> #include <list> using namespace std; class A { publ ......
timed_mutex thread mutex timed std

std::thread 二:互斥量(多个互斥量的解决方法)

// *:这里的lock是函数模板,最少传两个互斥量 // 第一种,使用 lock 和 unlock std::mutex m_mutex1; std::mutex m_mutex2; std::lock(m_mutex1, m_mutex2); m_mutex1.unlock(); m_mutex ......
多个 方法 thread std

std::thread 二:互斥量(lock() & unlock())

mutex 互斥量的作用是保护共享数据 *:有 lock() 就一定要有 unlock() #include <iostream> #include <thread> #include <mutex> #include <list> using namespace std; class A { pu ......
thread unlock lock std amp

std::thread 二:互斥量(lock_guard())

*:使用 lock_guard 后,就不可以使用 lock() 和 unlock() *:lock_guard 和智能指针一样,会自动解锁 #include <iostream> #include <thread> #include <mutex> #include <list> using nam ......
lock_guard thread guard lock std

std::thread 一:创建线程的三种方式

前言: #include <thread> thread.join() // 阻塞 thread.detach() // 非阻塞 thread.joinable() // bool,判断线程是否支持join或者detach 正文: 创建线程有三种方式,分别是:使用函数来创建线程、使用自定义的类来创建 ......
线程 方式 thread std

std::string 拼接字符串

#include <iostream> #include <string> #include <sstream> using namespace std; int main() { string a = "123"; stringstream b; b << 123 << "456" << 789 ......
字符串 字符 string std

C++面试八股文:什么是RAII?

# C++面试八股文:什么是RAII? 某日二师兄参加XXX科技公司的C++工程师开发岗位第13面: > 面试官:什么是`RAII`? > 二师兄:`RAII`是`Resource Acquisition Is Initialization`的缩写。翻译成中文是资源获取即初始化。 > 面试官:`RA ......
八股文 八股 RAII

C++面试八股文:std::string是如何实现的?

某日二师兄参加XXX科技公司的C++工程师开发岗位第18面: > 面试官:`std::string`用过吧? > > 二师兄:当然用过(废话,C++程序员就没有没用过`std::string`的)。 > > 面试官:`std::string("hello")+"world"`、`"hello"+st ......
八股文 八股 string std

C++面试八股文:了解位运算吗?

# C++面试八股文:了解位运算吗? 某日二师兄参加XXX科技公司的C++工程师开发岗位第12面: > 面试官:了解位运算吗? > 二师兄:了解一些。(我很熟悉) > 面试官:请列举以下有哪些位运算? > 二师兄:按位与(`&`)、按位或(`|`)、按位异或(`^`),按位取反(`~`)、左移(`> ......
八股文 八股

linux内核八股

面试必备(背)-Linux八股文系列!-腾讯云开发者社区-腾讯云 (tencent.com) 【面试-八股文】Linux 万字总结,助你吊打面试官系列 - 知乎 (zhihu.com) (122条消息) Linux操作系统(八股文篇)_栋哥爱做饭的博客-CSDN博客 深入理解Linux Kernel ......
八股 内核 linux

C++面试八股文:聊一聊指针?

某日二师兄参加XXX科技公司的C++工程师开发岗位第17面: > 面试官:聊一聊指针? > > 二师兄:好的。 > > 面试官:你觉得指针本质上是什么? > > 二师兄:这要从内存地址开始说起了。如果有一块容量是1G的内存,假设它的地址是从`0x00000000` 到`0x3fffffff`,每一个 ......
八股文 八股 指针

【八股cover#4】OS Q&A与知识点

# OS Q&A与知识点 ## 重点知识 ### 进程 #### 概念 ​ 我们编译的代码可执行文件只是储存在硬盘的静态文件,运行时被加载到内存,CPU执行内存中指令,这个运行的程序被称为进程。 **进程是对运行时程序的封装,操作系统进行资源调度和分配的基本单位**。 #### 进程的实现 ​ 当* ......
八股 知识点 知识 cover amp

C++面试八股文:什么是左值,什么是右值?

某日二师兄参加XXX科技公司的C++工程师开发岗位第16面: > 面试官:什么是左值,什么是右值? > > 二师兄:简单来说,左值就是可以使用`&`符号取地址的值,而右值一般不可以使用`&`符号取地址。 ```c++ int a = 42; //a是左值,可以&a int* p = &a; int* ......
八股文 八股

C++面试八股文:在C++中,你知道哪些运算符?

# C++面试八股文:在C++中,你知道哪些运算符? 某日二师兄参加XXX科技公司的C++工程师开发岗位第11面: > 面试官:在C++中,你都知道都哪些运算符? > 二师兄:啥?运算符?`+-*/=`这些算吗? > 面试官:嗯,还有其他的吗? > 二师兄:当然还有,`+=,-=,*=,/=,==` ......
八股文 运算符 八股

C++面试八股文:了解auto关键字吗?

某日二师兄参加XXX科技公司的C++工程师开发岗位第15面: > 面试官:了解`auto`关键字吗? > > 二师兄:嗯,了解一些(我很熟悉)。 > > 面试官:说一说`auto`的用法吧? > > 二师兄:`auto`主要是为了编译器进行类型推导。比如: ```c++ auto i = 42; / ......
八股文 八股 关键字 关键 auto

C++面试八股文:了解sizeof操作符吗?

# C++面试八股文:了解sizeof操作符吗? 某日二师兄参加XXX科技公司的C++工程师开发岗位第10面: > 面试官:了解`sizeof`操作符吗? > 二师兄:略微了解(不就是求大小的嘛。。) > 面试官:请讲以下如何使用`sizeof`? ` > 二师兄:`sizeof`主要是求变量或者类 ......
八股文 操作符 八股 sizeof

c++多线程 std::async std::future

c++标准库中对线程操作有完善的封装,其中最常用到的如std::thread, std::async。 EffectiveModernCpp中指出,应尽量使用std::async即基于任务的编程而非基于线程的编程。std::thread在前面的文章有提到过,此处仅对std::async作以记录。 正 ......
线程 std future async

Qt error: C7525: 内联变量至少需要 “/std:c++17“

碰到这种错误,只需要在Qt中配置C++17即可解决 打开该项目中的xxx.pro文件,然后如下图中红色方框中配置:CONFIG += c++17 ......
变量 C7525 error 7525 std

【八股cover#3】计网 Q&A与知识点

# 计网知识点Q&A ## 简历cover ### 1、TCP/IP网络模型 #### 网络模型 ​ TCP/IP 协议族,它是一个分层、多协议的通信体系。 ​ TCP/IP协议族是一个**四层协议系统**,自底而上分别是**数据链路层**、**网络层**、**传输层**和**应用层**。 ​ 在 ......
八股 知识点 知识 cover amp

C++面试八股文:在C++中,有哪些可执行体?

某日二师兄参加XXX科技公司的C++工程师开发岗位第14面: > 面试官:在C++中,有哪些可执行体? > > 二师兄:可执行体? > > 面试官:也就是可调用对象。 > > 二师兄:让我想一想。函数、函数指针、类的静态方法、类的成员方法、仿函数、lambda表达式。 > > 面试官:能说一说他们之 ......
八股文 八股

C++面试八股文:C++中,设计一个类要注意哪些东西?

某日二师兄参加XXX科技公司的C++工程师开发岗位第9面: > 面试官:C++中,设计一个类要注意哪些东西? > 二师兄:设计一个类主要考虑以下几个方面:1.面向对象的封装、继承及多态。2.`big three`或者`big five`。3.运算符和函数重载、静态成员、友元、异常处理等相关问题。 > ......
八股文 八股 东西

std::package_task bind.lambda,thread,future

#include <atomic> #include <chrono> #include <cmath> #include <condition_variable> #include <cstddef> #include <forward_list> #include <fstream> #incl ......
package_task package lambda future thread

C++面试八股文:什么是RAII?

某日二师兄参加XXX科技公司的C++工程师开发岗位第13面: > 面试官:什么是`RAII`? > > 二师兄:`RAII`是`Resource Acquisition Is Initialization`的缩写。翻译成中文是资源获取即初始化。 > > 面试官:`RAII`有什么特点和优势? > > ......
八股文 八股 RAII

C++面试八股文:C++中,函数的参数应该传值还是传引用?

# C++面试八股文:C++中,函数的参数应该传值还是传引用? 某日二师兄参加XXX科技公司的C++工程师开发岗位第8面: > 面试官:C++中,函数的参数应该传值还是传引用? > 二师兄:要看参数的用途。如果是出参,必须传引用。如果是入参,主要考虑参数类型的大小,来决定传值还是传引用。 > 面试官 ......
八股文 八股 函数 参数 还是

C++ Windows.h max宏与std::max冲突问题解决

C语言引入的宏支持了一定程度的元编程,但它仅仅是简单的字符串替换,这种“六亲不认”的操作很容易导致一些编译错误。 这篇文章介绍了一种场景:项目同时引入了老的C头文件,里面用宏定义了一些宏函数;还引入了C++的头文件,里面用其他方式定义了一些同名函数。具体到问题本身,这个老的头文件是Windows.h ......
max Windows 问题 std

C++面试八股文:static和const的关键字有哪些用法?

# C++面试八股文:static和const的关键字有哪些用法? 某日二师兄参加XXX科技公司的C++工程师开发岗位第7面: > 面试官:C++中,`static`和`const`的关键字有哪些用法? > 二师兄:`satic`关键字主要用在以下三个方面:1.用在全局作用域,修饰的变量或者函数为静 ......
八股文 八股 关键字 关键 static

C++面试八股文:了解位运算吗?

某日二师兄参加XXX科技公司的C++工程师开发岗位第12面: > 面试官:了解位运算吗? > > 二师兄:了解一些。(我很熟悉) > > 面试官:请列举以下有哪些位运算? > > 二师兄:按位与(`&`)、按位或(`|`)、按位异或(`^`),按位取反(`~`)、左移(`>`)。 > > 面试官:好 ......
八股文 八股

std::atomic store load std::memory_order_seq_cst

#include <atomic> #include <chrono> #include <ctime> #include <fstream> #include <future> #include <iomanip> #include <iostream> #include <map> #inclu ......
memory_order_seq_cst std atomic memory order

C++面试八股文:如何在堆上和栈上分配一块内存?

# C++面试八股文:如何在堆上和栈上分配一块内存? 某日二师兄参加XXX科技公司的C++工程师开发岗位6面: > 面试官: 如何在堆上申请一块内存? > 二师兄:常用的方法有malloc,new等。 > 面试官:两者有什么区别? > 二师兄:malloc是向操作系统申请一块内存,这块内存没有经过初 ......
八股文 八股 内存