代码改变世界

随笔分类 -  c/c++

进程间通信(三)—信号量

2018-02-07 10:20 by nigaopeng, 166 阅读, 收藏,
摘要: https://www.cnblogs.com/lenomirei/p/5649792.html 阅读全文

打印时间

2018-02-02 11:29 by nigaopeng, 300 阅读, 收藏,
摘要: userspace kernel 阅读全文

Linux下保存文件

2018-01-18 10:20 by nigaopeng, 809 阅读, 收藏,
摘要: 经常需要dump数据,mark一下 头文件:#include <sys/types.h> #include <sys/stat.h> #include <fcntl.h>定义函数: 函数说明:参数 pathname 指向欲打开的文件路径字符串. 下列是参数flags 所能使用的旗标:O_RDONLY 阅读全文

大小端模式

2018-01-12 09:26 by nigaopeng, 809 阅读, 收藏,
摘要: 大端模式,是指数据的高字节保存在内存的低地址中,而数据的低字节保存在内存的高地址中,这样的存储模式有点儿类似于把数据当作字符串顺序处理:地址由小向大增加,而数据从高位往低位放;这和我们的阅读习惯一致。 小端模式,是指数据的高字节保存在内存的高地址中,而数据的低字节保存在内存的低地址中,这种存储模式将 阅读全文

error c2129:静态函数已声明但未定义

2017-12-13 08:32 by nigaopeng, 1629 阅读, 收藏,
摘要: 今天在做一个c函数暴露给lua 时,出现这个问题。 大概代码是这样的, 头文件: 源文件: 后来翻阅,查出原因: 静态函数只能在声明它的文件当中可见,不能被其他文件所调用,也就是说静态函数只能在声名它的文件中调用,在其他文件里是不能被调用的。 当然,其实我这里在头文件里做静态函数的声明也是完全没有必 阅读全文

起thread时,运行报错terminate called without an active exception

2017-12-12 17:22 by nigaopeng, 14601 阅读, 收藏,
摘要: I am getting a C++ error with threading: How to reproduce that error: Compile and run: You get that error because you didn't join or detach your threa 阅读全文

c++ 动态判断基类指针指向的子类类型(typeid)

2017-12-01 10:01 by nigaopeng, 1087 阅读, 收藏,
摘要: 我们在程序中定义了一个基类,该基类有n个子类,为了方便,我们经常定义一个基类的指针数组,数组中的每一项指向都指向一个子类,那么在程序中我们如何判断这些基类指针是指向哪个子类呢? 本文提供了两种方法 (1) 自定义类id, (2)typeid 一、自定义id 如下所示基类father有两个子类son1 阅读全文

UML图中类之间的关系:依赖,泛化,关联,聚合,组合,实现

2017-11-29 10:35 by nigaopeng, 604 阅读, 收藏,
摘要: 类与类图 1) 类(Class)封装了数据和行为,是面向对象的重要组成部分,它是具有相同属性、操作、关系的对象集合的总称。 2) 在系统中,每个类具有一定的职责,职责指的是类所担任的任务,即类要完成什么样的功能,要承担什么样的义务。一个类可以有多种职责,设计得好的类一般只有一种职责,在定义类的时候, 阅读全文

open()参数宏的意义 O_TRUNC

2017-09-30 11:05 by nigaopeng, 2006 阅读, 收藏,
摘要: C语言中一些基本函数 int _open(char *pathname,int access)为读或写打开一个文件, 按后按access来确定是读文件还是写文件,access值见下表 ┌──────┬────────────────────┐ │access值 │意义 │ ├──────┼───── 阅读全文

c++ explicit

2017-09-01 13:53 by nigaopeng, 238 阅读, 收藏,
摘要: C++提供了关键字explicit,可以阻止不应该允许的经过转换构造函数进行的隐式转换的发生。声明为explicit的构造函数不能在隐式转换中使用。 C++中, 一个参数的构造函数(或者除了第一个参数外其余参数都有默认值的多参构造函数), 承担了两个角色。 1 是个构造器 ,2 是个默认且隐含的类型 阅读全文

利用宏定义在编译阶段检查结构体大小的方法

2017-08-11 13:42 by nigaopeng, 1925 阅读, 收藏,
摘要: SIZE_OF_TYPE_EQUAL_TO(type, size): 如果type != size,那么__dummy1 ,__dummy2这2个数组在定义时肯定有一个是负数,数组在分配大小时会将大小视为无符号型处理,那么此时这个数组的大小将会变得很大,例如-1是0xFFFFFFFF(32位机上), 阅读全文