From 45762d89560a1ff2d6ee1d4bc5d997b3520a8686 Mon Sep 17 00:00:00 2001 From: 1AoB <2453468739@qq.com> Date: Sun, 21 Apr 2024 01:26:16 +0800 Subject: [PATCH] c++ --- .../post/2024-04-19面试复盘/index.zh-cn.md | 273 ++++++++++++++++-- .../2024-04-19面试复盘/图片/1713633820870.png | Bin 0 -> 51004 bytes 2 files changed, 248 insertions(+), 25 deletions(-) create mode 100644 exampleSite/content/post/2024-04-19面试复盘/图片/1713633820870.png diff --git a/exampleSite/content/post/2024-04-19面试复盘/index.zh-cn.md b/exampleSite/content/post/2024-04-19面试复盘/index.zh-cn.md index 70aa314..f5f2da8 100644 --- a/exampleSite/content/post/2024-04-19面试复盘/index.zh-cn.md +++ b/exampleSite/content/post/2024-04-19面试复盘/index.zh-cn.md @@ -17,19 +17,113 @@ This article offers a sample of basic Markdown. # 正文开始 -1.struct和class的区别 +在线编程工具: -2.值传递,地址传递,引用传递(拷贝)的区别 +https://www.bejson.com/runcode/c740/ -4.指针是几个字节? -5.static关键字 -6.虚函数指针,虚函数表 +sizeof(空类) = 1; -7.多态 +静态成员变量和成员函数都不占类的大小(sizeof),也就是说静态成员变量和成员函数都不属于类 -8.编译器如何知道你是进行的函数重载 + + +``` +继承下面说了 + +封装:将变量设置为protected或者provate,限制这些变量在类外的直接访问,我们可以使用get常量函数来完成对这个变量的封装 + +protected:当一个成员被定义为protected类型时,仅能在类内、友元和派类访问。 + +private:当一个成员被定义为private类型时,仅能在类内、友元访问。 + +多态下面说了 +``` + + + +## 1.struct和class的区别 + +首先,class是cpp独有的,c语言里面没有, + +然后就是在cpp中,class的默认访问权限是private,而struct是public; + +还有就是class默认都是私有继承,而sruct默认是公有继承. + +最后一点是,在语法上的区别,你使用cpp中 , + +不管是struct还是class,都可以直接使用类名. + +在c语言中,要么写 struct A a;(带上struct),要么你用typedef struct A A;一下 + + + +涉及知识:https://blog.csdn.net/weixin_52668597/article/details/136666085?spm=1001.2014.3001.5501 + + + +补充:公有继承,保护继承与私有继承下,类内的元素的权限变化: + +- 公有继承:原来啥权限就还是啥权限,一点不变 +- 保护继承:原来公有变保护,其他两个->原来啥权限就还是啥权限 +- 私有继承:原来公有变私有,原来保护变私有,原来私有还是私有 + +## 2.值传递,地址传递,引用传递(拷贝)的区别 + +值传递你无法在函数中改变这个变量的值 + +地址传递和引用你可以在函数中改变这个变量的值 + +值传递相当于是你建立了一个副本,你是你,他是他,你的改变无法影响到他,他的改变无法影响到你. + +地址传递的话,传进去的就是本人了,此时修改地址上的数据会影响到原始数据. + +而引用传递相当于是给该变量取的别名,相当于是一个大名一个小名比如鲁迅和周树人,本质上还是一个人,所以改变引用传递的变量也可以改变变量的原始数据 + +## 4.指针是几个字节? + +64位系统是8字节 + +32位系统是4字节 + +## 5.static关键字 + +static的用法分为静态变量与静态函数 + +静态变量将变量限定在当前文件下,且生命周期和该文件运行的周期一样长. + +然后再细分就是局部静态变量与全局静态变量:局部静态变量被限定在一个代码块内(一般是一个函数),而全局静态变量只要是在这个文件内,都可以访问. + + + +再者就是静态函数了,静态成员函数只能访问静态成员变量 + + + +然后就是,类中的静态成员变量并不属于这个类,你用sizeof去算,他不算这个类的大小 + + + +涉及知识:cpp编译单元 https://blog.csdn.net/weixin_52668597/article/details/137575061?spm=1001.2014.3001.5501 + +## 6.虚函数指针,虚函数表 + +涉及知识:https://blog.csdn.net/weixin_52668597/article/details/137447982?spm=1001.2014.3001.5501 + +只要你在类中写了一个虚函数,那么就会产生一个虚函数表. + +而且不管你写多少个虚函数,这些虚函数在类中所占的内存就只有8个字节,而占的这八个字节就是虚函数指针,也就是说,这些虚函数都放在一个数组中,这个数组就是虚函数表 + +## 7.多态 + +涉及知识:https://blog.csdn.net/weixin_52668597/article/details/137447982?spm=1001.2014.3001.5501 + + + +多态其实就是 父类指针指向子类对象,如果子类重写了父类的方法,那么这个父类指针就会呈现出不同的现象 + +## 8.编译器如何知道你是进行的函数重载 答:函数重载,它允许在同一个作用域中定义多个同名函数,但这些函数的参数列表或类型必须不同。在调用这些函数时,编译器会根据传递给函数的参数的数量、类型或顺序来确定要调用的具体函数版本。 @@ -41,7 +135,7 @@ This article offers a sample of basic Markdown. -9.构造,析构的顺序 +## 9.构造,析构的顺序 在C++中,对象的构造和析构顺序 @@ -80,9 +174,48 @@ Child::fun() -10.stl:vector、list、Map的区别 +## 10.stl:vector、list、Map的区别 -11.智能指针 +vector:底层是一个动态数组,可以通过下标进行快速随机访问,占据连续的内存,在不扩容的情况下,在尾部增删很快.在扩容的情况下,需要先开辟原来容器大小的1.5倍,再将原数据拷贝到新的内存,最后在释放原内存 + +list:是一个双向链表,他虽然也可以用下标访问,但是那是因为他重载了中括号运算符,他访问一个元素的复杂度是o(n),他的内存是不连续的,节点之间通过指针连接.他唯一的优势是可以快速的在任意位置进行增删,但前提是先经过o(n)的复杂度找到这个位置 + +Map:是一个键值对,类似于json那种结构,底层是红黑树实现. + +每个键都是唯一的(键和值可以为null,但是键只能出现一次), + +map在插入好删除时会自动排序,他对元素的访问、插入和删除操作,这些操作的时间复杂度通常是对数时间(即`O(log n)`)。 + + + +```cpp +#include +#include + +using namespace std; + +class A{}; + +int main() +{ + map m1,m2; + m1[nullptr] = 1; + A *a = new A(); + m2[a] = 2; + + printf("%d,%d",m1[nullptr],m2[a]); + + map m3; + m3[nullptr] = nullptr; + return 0; +} + + +``` + + + +## 11.智能指针 智能指针有auto_ptr,share_ptr,unique_ptr还有shared_ptr @@ -109,11 +242,17 @@ auto_ptr是C++98中引入的第一个智能指针,但是由于他的不安全 -12.项目中如何保证线程安全? +## 12.项目中如何保证线程安全?(如何避免死锁) -13.死锁 +加锁:**互斥锁**,**读写锁**,cpp中特有的智能锁 -14.多线程中多个信号与主线程 +## 13.死锁 + +死锁产生的条件: + +![1713633820870](图片/1713633820870.png) + +## 14.多线程中多个信号与主线程 主线程一般是负责控制和协调其他线程的任务。比如说我这个共享单车项目中的服务器,他的主线程主要是负责监听客户端的连接,一旦有客户端来进行连接,我们就会把这个客户端通过libevent变成一个事件,并把他加入到事件集合中去,然后由其他线程来监听该客户端的读写事件,并通过轮询的方式拿到线程池中的一个线程,然后由这个线程通过调用它自己的回调函数来处理这个读写事件.相当于主线程就是是负责统筹规划的,他只复制监听客户端,剩下的交给其他线程. @@ -127,38 +266,122 @@ auto_ptr是C++98中引入的第一个智能指针,但是由于他的不安全 常见模式有: -1. **条件变量(Condition Variables)**:相当于是一种基于互斥锁的线程间同步机制,通常情况下是和锁一起使用的。主线程可以使用条件变量来等待特定的条件达成,而其他线程则可以通过发送信号来通知主线程条件的改变。一旦条件满足,主线程就会被唤醒并继续执行。 +1). **条件变量(Condition Variables)**:相当于是一种基于互斥锁的线程间同步机制,通常情况下是和锁一起使用的。主线程可以使用条件变量来等待特定的条件达成,而其他线程则可以通过发送信号来通知主线程条件的改变。一旦条件满足,主线程就会被唤醒并继续执行。 -2. **事件(Events)**:事件也是一种用于线程间同步的通信机制,通常用于向其他线程发出信号以触发特定事件的发生,然后执行事件的回调函数。主线程可以等待某个事件的发生,其他线程可以通过发送信号来触发该事件。 +2). **事件(Events)**:事件也是一种用于线程间同步的通信机制,通常用于向其他线程发出信号以触发特定事件的发生,然后执行事件的回调函数。主线程可以等待某个事件的发生,其他线程可以通过发送信号来触发该事件。 -3. **信号量(Semaphores)**: +3). **信号量(Semaphores)**: - 信号量维护一个计数器,表示可用资源的数量。线程可以通过请求(等待)和释放(发信号)操作来获取和释放资源。当计数器为正时,线程可以继续执行,否则线程会被阻塞直到资源可用。就是我们常说的那个操作系统pv操作,经常用来解决“生产者消费者的问腿” + 信号量维护一个计数器,表示可用资源的数量。线程可以通过请求(等待)和释放(发信号)操作来获取和释放资源。当计数器为正时,线程可以继续执行,否则线程会被阻塞直到资源可用。就是我们常说的那个操作系统pv操作,经常用来解决“生产者消费者的问题”,当然信号量也是可以的 伪代码: - ```cpp - 待补充。。。 - ``` +```cpp +生产者和消费者都可以有很多个 - +情况有三种: +1.队列已满,生产者停止生产商品 -> 生产者wait条件变量 +2.队列为空,消费者无商品可取 -> 消费者wait条件变量 +3.队列不满但非空,生产者正常生产商品,消费者正常取商品 -4. **消息队列(Message Queues)**:主线程可以通过发送消息到队列中来通知其他线程,而其他线程则可以从队列中接收消息并执行相应的操作。 +#include "需要的头文件" + +//wait()-> P()操作 -- +//signal()-> V()操作 ++ + +typedef struct{ + int value; //剩余资源数 + struct process *list;//等待队列 +} semaphore; + +semaphore empty,full;//空位和产品的数量 空位数+产品数=最大容量 +Mutex mutex1,mutex2;//两个互斥锁 + +//申请使用资源 +void wait(semaphore s) +{ + s.value --; + if(s.value < 0)//剪完1后,可能等于0(表示资源刚好用完,但是够用,所以不阻塞),也可能<0(资源早就用完了,再减一就没得用了,所以要阻塞) + { + block(s.list); + } +} + +//使用完释放资源 +void signal(semaphore s) +{ + s.value ++; + if(s.value <= 0)//刚释放完一个资源(也就是说现在有一个资源可用),发现资源数==0,说明说明之前是<0的,表示队列已经阻塞了;如果发现资源数<0,那就更不用说了,肯定有消费者在等待 + { + wakeup(s.list); + } +} +// 生产者函数 +void producer() { + while (1) { + produce();//生产1个东西 + wait(empty);//空位减1个 + wait(mutex1);//上锁 + + array[空位] = 产品;//给一个空位放产品 + + signal(mutex1);//解锁 + signal(full);//产品数+1 + + } +} + +// 消费者函数 +void consumer() { + while (1) { + wait(full);//产品数-1 + wait(mutex2);//上锁 + + array[产品数] = null;//拿走一个产品 + + signal(mutex2);//解锁 + signal(empty);//空位+1 + + comsum();//消费这个产品 + } +} + +int main() { + std::thread prod(producer); + std::thread cons(consumer); + prod.join(); + cons.join(); + return 0; +} + + +``` + +``` +信号量(Semaphore): +信号量是一种用于控制对共享资源的访问的同步机制。它通常用于实现进程或线程间的协调。信号量主要包含两种操作:wait()(或称为P()操作)和 signal()(或称为V()操作)。wait()操作会减少信号量的计数,如果结果为负数,则线程会阻塞。signal()操作会增加信号量的计数,如果有线程正在阻塞,它会被唤醒。 +``` + + +4). **消息队列(Message Queues)**:主线程可以通过发送消息到队列中来通知其他线程,而其他线程则可以从队列中接收消息并执行相应的操作。 +15.qt信号槽中有第五个参数,有了解过吗? +信号槽中有第五个参数支持qt中,信号与槽进行跨跨线程通信,他是一个枚举值, +默认是自动连接,也比较智能,如果信号与槽是在同一个线程,就直接调用槽函数,如果不在同一个线程,会自动使用QueuedConnection. +然后支持多线程的枚举值其实有两个,一个是Queued Connection,另一个是BlockingQueuedConnection,这两个支持信号与槽的异步通信,唯一的区别是: +Queued Connection是异步非阻塞的,BlockingQueuedConnection是异步阻塞的,然后非阻塞是运行后直接返回,阻塞是运行结束后才返回. +Queued Connection用的比较多,他可以保证槽函数的调用是在接收者的线程中进行的,所以就不会有多个线程同时访问槽函数中的共享资源的情况发生(除非槽函数内部又进行了不安全的跨线程操作),这样就避免线程竞争,避免了线程安全的问题。 - - - # 补充: diff --git a/exampleSite/content/post/2024-04-19面试复盘/图片/1713633820870.png b/exampleSite/content/post/2024-04-19面试复盘/图片/1713633820870.png new file mode 100644 index 0000000000000000000000000000000000000000..e5ea5431582ce58e0ad5564020963c58597fca3f GIT binary patch literal 51004 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