
简介
该用户还未填写简介
擅长的技术栈
可提供的服务
暂无可提供的服务
因为C/C++接近底层,所以了解C++内存模型对C++程序员起着至关重要的作用。本文还介绍了new和delete操作符的主要使用方法。

1. 计算机网络的发展背景1.1 局域网(LAN)1.2 以太网的由来2. 认识网络协议2.1 什么是协议2.2 什么是网络协议2.3 如何管理协议协议栈3. 了解网络协议3.1 协议分层3.2 分层的作用模块化标准化3.3 分层对用户的影响3.4 常见的分层模型4. OSI 七层模型4.1 功能概述5. TCP/IP 四层/五层结构5.1 功能概述6. 网络传输基本流程6.1 同局域网通信6.2
全局对象:程序启动时分配,在程序结束时销毁。局部对象:当我们进入其定义所在的程序块时被创建,在离开块时销毁。局部static对象:在第一次使用前分配,在程序结束时销毁。静态内存:保存局部static对象、类static数据成员以及定义在任何函数之外的变量。栈内存:保存定义在函数内的非static对象。分配在静态或栈内存中的对象由编译器自动创建和销毁。对于栈对象,仅在其定义的程序块运行时才存在;st
当Blocking Queue已满时,生产者线程将会被阻塞;当Blocking Queue为空时,消费者线程将会被阻塞。图片来源于:https://math.hws.edu/eck/cs124/javanotes7/c12/producer-consumer.pngBlocking Queue 与普通队列的主要区别在于它具有阻塞功能。当管道中没有数据可读时,从管道中读取数据的操作将会被阻塞,直到有
本文基于UDP协议实现了简单的回声服务器,并在此基础上应用线程实现了简单的群聊功能。

1. 前导知识1.1 源MAC地址和目的MAC地址1.2 源IP地址和目的IP地址1.3 MAC地址和IP地址的配合1.4 源端口号和目的端口号1.5 Socket1.6 UCP协议和TCP协议1.7 网络字节序高低位高低地址大端和小端网络字节序常用转换函数2. socket 网络编程2.1 socket 常见接口创建套接字绑定监听套接字接收请求建立连接2.2 常见套接字域间套接字原始套接字网络套
或者编译器会对常量进行优化,直接用它的值替换所有的引用,那么你修改的只是一个临时变量,而不是原来的常量。在main函数中,创建了一个B类的对象b,并将其地址分别赋给了指向A1和A2类型的指针ptr1和ptr2。reinterpret_cast可以将任何指针类型转换为任何其他指针类型,但是这种转换是不安全的,因为它不检查转换前后的指针是否兼容。这些输出的地址表明,指向A1类型的指针ptr1和指向A2
用C++设计并实现了一个高并发内存池,旨在提高多线程应用中内存分配的效率和性能。通过研究TCMalloc(来自Google的开源项目,并被应用于Golang内存分配器)的原理和结构,对比malloc/free,实现了一个针对高并发情境优化的内存分配器。
通常lambda表达式用于封装一些传递给算法或异步函数的代码。C++11中引入了λ表达式,它可以用来定义一个**内联 (inline)**的函数,作为一个本地的对象或者一个参数。内联函数是一种编译器优化技术,它可以避免函数调用的开销,提高执行效率。λ表达式可以被编译器自动内联展开,从而减少函数调用的次数。但是,并不是所有的λ表达式都会被内联,这取决于编译器的实现和优化策略。

这是一篇为C语言学习新手倾注心血的学习&&心得笔记,零基础看完它也能看得懂代码!欢迎交流