C++
文章平均质量分 78
未空blog
沙弥虽小,终成法王
展开
-
进程&线程
进程是运行着的程序,我们写完一个代码,完了以cpp格式保存,这个玩意儿叫程序。在执行这个程序的时候,这个程序会被翻译成一串计算机看得懂的二进制文件,《我记得》本科在学计算机组成原理的时候看到过汇编程序,那个是相对java、C++这些更接近计算机的语言了,汇编会被接着翻译成二进制代码,放在CPU里面执行,这个时候程序跑起来了,这个就叫进程。原创 2023-03-15 23:35:08 · 142 阅读 · 0 评论 -
Socket+Select+Epoll笔记
讲到epoll,就必须了解Socket,上篇博客写了Socket的基本使用方法,步骤主要为创建一个socketsocket是进程之间通信的,那么进程通信如何找到这个socket呢?当然是端口号,所以socket就要和端口号进行绑定,使用bind把信息初始化完成以后,需要把socket状态设置成监听模式监听是否有客户端的socket来找到该socket,如果有,就建立连接accept接受数据recv上面是一个程序,当程序在接受数据的时候,没法干下一步的工作,进入阻塞状态。原创 2023-03-13 22:27:06 · 447 阅读 · 0 评论 -
C++继承派生以及虚基类的内存分布
看上面代码输出会发现d对象的地址就是B中A::x的地址,而不是C中A::x的地址,这是因为我们定义的时候是class D:public B, public C。顺便提一嘴,空类也是有一个字节占位的,非空类的大小并不是简单的相加,而是要按照内存对齐原则,因为我们这里全是int所以就不用考虑。很容易想到继承的父类都分了一个内存,但是按照上图,就算把A的x也算进去一共也有只有5个int呀。可以打印下sizeof(D),D中只有一个int m,但是D的大小竟然是24字节,这其中必定和继承有关。原创 2023-03-07 09:41:35 · 536 阅读 · 1 评论 -
类模板&函数模板&从属类型
准备看个项目找实习,边看边学,一看到处都是template 和typename,好几年前学的C++都忘记光了,在这里先做个笔记复习一下。上面是一个函数模板的例子,注意class改成typename在这种场景是一摸一样的。原创 2023-03-06 21:56:08 · 316 阅读 · 1 评论 -
TCP协议三次握手的原因是什么?为什么不用两次握手和4次握手?
场景:我是客户端,你是服务器,我们不能像平常讲话一样一起说互相听得到,我不确定你听没听到,你也不确定我听没听到,而且我们所有的话都是要按顺序说的,也就是说每次我要确认你听到我所有的话之后,我才会接着说话。如何确定你收到了?先看下面这个拟人场景,要是说不会三次握手我是不信的,其实你已经会了,不信看下面。我:兄弟,你听得到吗,我给你个100, 你听到了给我回个101哈?你:兄弟兄弟,收到收到,给你发个101,我给你个序列号200哈,你要是收到了给我个201?原创 2023-03-03 16:13:24 · 361 阅读 · 0 评论 -
C/C++网络编程笔记Socket
Socket 网络编程笔记原创 2023-03-02 13:50:53 · 2406 阅读 · 1 评论 -
C/C++网络编程笔记&WSL+Clion环境配置
C/C++ 网络通信笔记,主要是环境配置踩过的坑,这玩意儿要多看看多观察,UI界面乱点一下,不然的话上网搜都不知道怎么搜素。原创 2023-02-27 21:02:28 · 1159 阅读 · 0 评论