
语言基础
文章平均质量分 84
kingforyang
这个作者很懒,什么都没留下…
展开
-
C++11 nullptr和NULL区别
C++11 nullptr和NULL区别C定义NULLC++的NULLNULL的定义__null是什么nullptr是什么总结C定义NULLc语言中#define NULL ((void*)0)c语言的NLL定义用在C++中会怎样?因为C++是类型安全的,不允许void隐式转换为其他类型的指针。如果将NULL定义为((void)0), 赋值给指针类型的时候,编译会报错。//testnullptr.cpp#include <iostream>using namespace std原创 2021-12-06 01:08:03 · 692 阅读 · 0 评论 -
C++11 lambda表达式
C++11 lambda表达式1 什么是lambda表达式2 什么是lambda组成部分2.1 []捕获2.1.1 捕获形式:2.1.2 []不捕获任何外部变量:2.1.2 修改非mutable值捕获:2.1.3 重复捕获:2.1.4 混合捕获:2.2 参数列表2.3 mutable2.4 noexcep/throw()3 lambda优点4 lambda可以直接使用无需捕获变量1 什么是lambda表达式是一个闭包;是一个能够在作用域中捕获变量的匿名函数对象。2 什么是lambda组成部分1、原创 2021-12-04 21:50:24 · 434 阅读 · 0 评论 -
CMake错误集锦
CMake错误集锦CMake错误集锦1.CMake环境搭建2.常见错误2.1CMakeLists.txt文件名大小写敏2.2 CMakeLists.txt语法错误2.3 CMakeLists.txt命令拼写错误2.4 CMakeLists.txt变量错误2.5 CMakeLists.txt源文件添加错误2.6 CMakeLists.txt变量必须用{}CMake错误集锦1.CMake环境搭建开发环境:ubuntu18.04获取CMake工具包命令:wget https://cmake.org/f原创 2021-10-29 15:54:45 · 3148 阅读 · 0 评论 -
柔性数组
柔性数组1 定长数组2 指针新的改变1 定长数组在日常编码中时常需要缓存接收到的数据,通常不知道数据具体的长度,此时需要预先分配一个足够大的数组。下面例子中,就是我们申请的1024个字节长度的数组。#define MAX_BUFF_LEN 1024struct solid_array{ unsigned int len; char buff[MAX_BUFF_LEN];};上述结构有2个问题:1、如果接收到大量的数据包,数据包的大小都不超过24字节,那么每一个数据包都将有1000个字节原创 2021-05-07 12:42:25 · 244 阅读 · 0 评论