C/C++
loaLakers
这个作者很懒,什么都没留下…
展开
-
do{...}while(0)的意义和用法
linux内核和其他一些开源的代码中,经常会遇到这样的代码:do{ ...}while(0)这样的代码一看就不是一个循环,do..while表面上在这里一点意义都没有,那么为什么要这么用呢?实际上,do{...}while(0)的作用远大于美化你的代码。查了些资料,总结起来这样写主要有以下几点好处:1、辅助定义复杂的宏,避免引用的时候出错转载 2014-12-02 15:40:24 · 498 阅读 · 0 评论 -
浅说单态类
一说单态类,好多程序员都感觉脑袋大了,什么是单态类,它是干什么的,类不是可以有许多的实例吗,怎么会有单态类?说白了,单态类就是类的实例只有一个.这样大家就都会明白了吧.但是如何做类的实例只有一份呢?大家的困惑的地方只有一个,就是类可以在多处new 这个类的实例. 可以说new 无处不在.那怎么实现类只有一个实例呢.对吧?其实这是惯性思维的结果,如果我们逆向思维一下就会明白如何实现类的一个实转载 2014-11-02 14:31:21 · 1374 阅读 · 0 评论 -
.c和.h文件的区别
一个简单的问题:.c和.h文件的区别学了几个月的C语言,反而觉得越来越不懂了。同样是子程序,可以定义在.c文件中,也可以定义在.h文件中,那这两个文件到底在用法上有什么区别呢? 2楼:子程序不要定义在.h中。函数定义要放在.c中,而.h只做声明.否则多引用几次,就会发生函数重复定义的错误。3楼:.h只做声明,编译后不产生代码4楼: 这样做目的是为转载 2014-11-24 17:26:42 · 851 阅读 · 0 评论 -
C语言结构体(struct)常见使用方法
今天复习一下struct,顺便挖掘一下以前没注意的小细节:基本定义:结构体,通俗讲就像是打包封装,把一些变量有共同特征(比如同属于某一类事物的属性)的变量封装在内部,通过一定方法访问修改内部变量。结构体定义:第一种:只有结构体定义[cpp] view plaincopystruct stuff{ char j转载 2014-12-04 21:57:39 · 2515 阅读 · 0 评论 -
makefile 教程 模版
本文提供一个在GNU/Linux环境下通用的智能Makefile模板,用户可以将其引入到自己的工程当中。即使用户对此Makefile的工作原理不甚了解,但是只需要修改少数几个关键变量,就可以满足不同的应用需求。1. 使用环境GNU make 3.8.1或者以上版本sedgcc/binutilscygwin或者Linux2. 关键变量CROSS_COMPI转载 2014-12-05 15:50:39 · 1096 阅读 · 0 评论