C/C++
北漂的攻城狮
这个作者很懒,什么都没留下…
展开
-
变量命名的通用规则
1.变量名只能是字母(A-Z,a-z)、数字(0-9)或下划线。 2.第一个字母不能是数字,例如2Lerver这不是一个合法的C++变量。 3.不能是c++关键字,例如不能用class这个单词来命名一个变量。 4.区分大小写,例如iA和ia是两个不同的变量。 理论上,在遵守了上面几条规则的前提下,所声明的变量名称都是合法的。比如下面的命名: char xue原创 2016-08-05 17:11:40 · 14573 阅读 · 0 评论 -
自己写的C++日志类log
主要功能是在服务器运行的时候可以打印日志到日志文件中,主要运用到的知识点有线程, 线程锁,条件变量,STL的deque。大致思路是这样的: 这个类提供一个接口,可以直接调用他,并且可以打印日志到日志文件中。但是不能影响到服务器的正常运行,也就是说不能进行大量的文件操作;大致 实现流程: 对象初始化时候创建一个线程在后台读取队列,并将读到的数据写入到日志文原创 2016-08-05 17:12:42 · 7445 阅读 · 0 评论 -
C/C++全局变量的定义与引用问题
最近在忙live555项目;说实话这是我做的第一个大型项目。虽然工作这么久还真是第一次做这么大项目;感觉自己这一年还真是没有一点进步;加个全局变量废了我半天力。废话不多说,切入正题全局变量,最早我看书C primer Plus里说的应该是叫做局外变量吧。总是就是以关键字extern 在一个头文件 声明的,然后这个被声明的变量可以被项目里的任意一个.cpp或者.c文件引用,引用的方式有两原创 2016-07-21 16:59:50 · 10997 阅读 · 1 评论 -
U盘系列 之U盘挂载信息的获取
程序内读取/etc/mtab或者/proc/mounts,解析字符串较为繁琐,可以使用mntent提供的方便函数:FILE *setmntent(const char *filename, const char *type);struct mntent *getmntent(FILE *filep);int endmntent(FILE *filep); (1)setmnt原创 2016-01-04 11:31:52 · 839 阅读 · 0 评论 -
C++头文件里编写实现代码
C里面一般是不允许把代码直接写在.h文件中的,但是在C++中则完全不一样:1. 简单的代码鼓励写成inline并放在.h文件中,这样编译器可以将代码直接嵌入调用的部分、进行深层次优化并且减少调用开支。当编译器认为不适合inline时也可以自动处理。类中将实现直接写在类声明中的自动成为inline函数。2. 模板类必须把代码写在.h中间,因为是到用时才编译的。事实上现在的C++编译器完全原创 2016-08-03 13:27:25 · 1857 阅读 · 0 评论 -
C++读写配置文件 config类
config类自我实现 #ifndef CONFIG_H_#define CONFIG_H_#include #include #define COMMENT_CHAR '#'#define CONFIG_NAME "./config/config.txt"/*** 读取配置文件的操作*/class Config{public:原创 2016-08-03 13:35:27 · 4969 阅读 · 5 评论 -
C++ 配置文件类(linux与window可跨平台使用)
编写程序一直在用的配置文件类,感觉很好用,做一下总结:class inirw{public: inirw(const char *filename){iniFileLoad(filename);}; ~inirw(){iniFileFree();}; //加载ini文件至内存 char gFilename[SIZE_FILENAME]; char *gBuffer; int gBu...原创 2018-06-05 16:37:31 · 2588 阅读 · 2 评论