- 博客(252)
- 资源 (3)
- 收藏
- 关注
原创 记录linux C/C++ 宏定义 __FILE__、__LINE__、__FUNCTION__、__DATE__、__TIME__
line 100 "test-new.c" // 更改下一行的行号和源文件名。作用:代表日期,形式为Mmm dd yyyy 的字符串常量;1.4 __func__ 和 __FUNCTION__作用:代表时间,hh:mm:ss 形式的字符串型常量;作用:代表当前程序行的行号,类型为十进制整数常量;作用:表示当前源文件名,类型为字符串常量;作用:将行号和文件名更改为指定的行号和文件名;作用:代表当前函数的函数名,类型为字符串常量;语法:#line 行号 [“文件名”]
2024-03-05 16:40:20
657
原创 Win11右键没有新建文件夹怎么办
5、此时,在New对应的右侧窗口,我们可以看到默认的数值数据为:{D969A300-E7DF-11d0-A93B-00A0C90F2719},左键双击:默认,在弹出的编辑字符串的对话框中,把数值数据更改为:{D969A300-E7FF-11d0-A93B-00A0C90F2719},再点击:确定。3、接下来我们在HKEY_CLASSES_ROOT展开项中找到:Directory,再依次展开:Directory\Background\shellex\ContextMenuHandlers。
2023-11-01 20:00:19
1044
1
原创 socket出错errno解析
#define EPERM 1 /* Operation not permitted */#define ENOENT 2 /* No such file or directory */#define ESRCH 3 /* No such process */#define EINTR 4 /* Interrupted system call */#define EIO 5 /* I/O error */#define ENXIO 6 /* No such device or address */
2023-10-19 10:50:26
605
1
原创 C++特有__attribute__的so动态库
综上,这段代码的作用是定义一个 C++ 函数或变量,并确保它能够按照 C 语言的约定进行编译和链接,同时它的可见性为默认值,并且这个函数或变量不会被编译器删除。这是一段 C++ 代码,其中使用了 GCC 编译器的一些特殊语法。
2023-08-10 20:03:15
704
原创 关于errno=(105)socketCAN错误write: No buffer space available的排查
socketCAN,linux
2022-12-08 12:41:38
6852
1
原创 错误“a label can only be part of a statement and a declaration is not a statement”解决方法
代码错误排查
2022-09-30 14:25:58
2071
原创 C++ 单例模式和可继承的单例基类模板
本文包括C++ 11的特性如智能指针, magic static,线程锁;本文的全部代码在 g++ 5.4.0 编译器下编译运行通过。一、什么是单例单例 Singleton 是设计模式的一种,其特点是只提供唯一一个类的实例,具有全局变量的特点,在任何位置都可以通过接口获取到那个唯一实例;具体运用场景如:设备管理器,系统中可能有多个设备,但是只有一个设备管理器,用于管理设备驱动; 数据池,用来缓存数据的数据结构,需要在一处写,多处读取或者多处写,多处读取;二、C++单例的实现2.1 基础
2022-05-18 23:14:17
7427
2
原创 c++拷贝构造函数
#include <iostream>#include <string>using namespace std;void func(string str){ cout<<str<<endl;}int main(){ string s1 = "http:www.biancheng.net"; string s2(s1); string s3 = s1; string s4 = s1 + " " + s2;.
2022-05-07 23:30:23
444
原创 c++引用
C和C++禁止在函数调用时直接传递数组的内容,而是强制传递数组指针,而对于结构体和对象没有这种限制,调用函数时既可以传递指针,也可以直接传递内容;为了提高效率,我曾建议传递指针,这样做在大部分情况下并没有什么不妥。但是在 C++ 中,我们有了一种比指针更加便捷的传递聚合类型数据的方式,那就是引用在 C/C++ 中,我们将 char、int、float 等由语言本身支持的类型称为基本类型,将数组、结构体、类(对象)等由基本类型组合而成的类型称为聚合类型(在讲解结构体时也曾使用复杂类型、构造类型这两种说
2022-05-07 23:15:00
411
原创 C++队列queue
只能访问 queue<T> 容器适配器的第一个和最后一个元素。只能在容器的末尾添加新元素,只能从头部移除元素。许多程序都使用了 queue 容器。queue 容器可以用来表示超市的结账队列或服务器上等待执行的数据库事务队列。对于任何需要用 FIFO 准则处理的序列来说,使用 queue 容器适配器都是好的选择。调用#include< queue>即可使用队列类queue<Type,Container> (<数据类型,容器类型>)初始化时必须要.
2022-05-07 22:45:18
961
原创 c++ STL中的map
1、map容器map是C++ STL的一个关联容器,它提供一对一的数据处理能力。其中,各个键值对的键和值可以是任意数据类型,包括 C++ 基本数据类型(int、double 等)、使用结构体或类自定义的类型。第一个可以称为关键字(key);第二个可能称为该关键字的值(value);该容器存储的都是 pair<const K, T> 类型(其中 K 和 T 分别表示键和值的数据类型)的键值对元素。使用 map 容器存储的各个键值对,键的值既不能重复也不能被修改。换句话说,map 容
2022-05-06 18:28:33
2527
原创 C++智能指针
在C++中,如果一个类被声明在栈空间,则在该函数执行完毕从栈空间弹出之后,类会自动调用析构函数。可是如果被显示声明在堆空间(使用new方法或者malloc方法),则需要显式调用析构函数才能进行析构。C++11 引入了 3 个智能指针类型:std::unique_ptr<T>:独占资源所有权的指针。std::shared_ptr<T>:共享资源所有权的指针。std::weak_ptr<T>:共享资源的观察者,需和 std::shared_ptr 一起使...
2022-03-30 22:10:49
2922
2
原创 C++中list
1.关于list容器list是一种序列式容器。list容器完成的功能实际上和数据结构中的双向链表是极其相似的,list中的数据元素是通过链表指针串连成逻辑意义上的线性表,也就是list也具有链表的主要优点,即:在链表的任一位置进行元素的插入、删除操作都是快速的。list的实现大概是这样的:list的每个节点有三个域:前驱元素指针域、数据域和后继元素指针域。前驱元素指针域保存了前驱元素的首地址;数据域则是本节点的数据;后继元素指针域则保存了后继元素的首地址。其实,list和循环链表也有相似的地方,..
2022-03-28 18:29:48
3254
原创 windows第三方软件找不到映射的网络盘
用第三方软件(如Solidworks)直接打开映射的网络盘里的文件时,却找不到映射的网络盘的盘符(直接打开"我的电脑"是可以看到的)解决办法,现分享给朋友们:打开注册表: HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Policies\System找到 Key: EnableLUA把Value data的值从1改成 0,并重启电脑即可!...
2022-03-28 17:55:32
8523
3
洞悉linux下的Netfilter&iptables;
2018-04-19
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人