- 博客(15)
- 资源 (148)
- 收藏
- 关注
转载 memset on stl string
Thread: memset on stl stringThread ToolsDisplayNovember 10th, 2005 04:37 PM#1cyberizen MemberJoin DateNov 2002LocationKarachi PakistanPo
2012-12-24 13:57:23 478
原创 c++ POD types
A POD is a type (including classes) where the C++ compiler guarantees that there will be no "magic" going on in the structure: for example hidden pointers to vtables, offsets that get applied to the a
2012-12-24 13:53:24 409
原创 头文件中的inline 函数
头文件中定义的inline函数, 如果不加static或者是extern, 编译器在内联该函数的同时会生成该函数自己的代码, 这样如果在两个源文件中包含了头文件会导致链接时函数重定义错误. 所以放在头文件中的inline最好声明为extern, 这种情况下, 编译器永远不会为inline生成自己的代码, 即使是引用该函数地址. 如果使用static, 只要不对函数地址进行引用, 否则将不会生成
2012-12-18 19:51:18 1101
原创 头文件和前置声明
文件包含其实是一件很烦琐的工作,不但我们看着累,编译器编译的时候也很累,再加上头文件中常常出现的宏定义。感觉各种宏定义的展开是非常耗时间的,远不如自定义函数来得速度。我仅就不同头文件、源文件间的句则结构问题提出两点原则,仅供参考: 第一个原则应该是,如果可以不包含头文件,那就不要包含了。这时候前置声明可以解决问题。如果使用的仅仅是一个类的指针,没有使用这个类的具体对象(非指针),也没有访
2012-12-18 19:24:06 573
转载 前置声明(Forward declaration)
前置声明是指声明一个类或结构体而不定义它,比如:class A;struct B;在声明之后,定义之前,该类或结构体被称为不完全类型(incompletion type),意思是,知道类型A和B,但不知道他包含哪些内容 不完全类型的使用有一些限制,不如不能用它来定义对象,但可以定义指象该类型对象的指针,比如不但定义 A a; B b;,但可以定义A
2012-12-18 19:22:07 985
转载 C++ 关于声明,定义,类的定义,头文件作用,防止头文件在同一个编译单元重复引用,不具名空间
1. 编译单元,一个.cc,或.cpp作为一个编译单元.生成.o2. 普通数据类型的定义,声明,函数的定义声明(类函数是一样的)extern int x; //变量是声明,并未实际分配地址,未产生实际目标代码 void print(); // 函数声明, 未产生实际目标代码 如int x; int x = 3 ; void print() {};
2012-12-18 19:12:42 432
原创 设置保护眼睛颜色
Windows:桌面->右键->属性->外观->高级->项目选择(窗口)、颜色1(L)选择(其它)将色调改为85,饱和度90,亮度205->添加到自定义颜色->在自定义颜色选定点确定->确定IE:打开IE,点击工具(TOOLS),点INTERNET选项(INTERNETOPTIONS),点右下角的辅助功能(Assessibility),然后勾选不使用网页中指定的颜色(i
2012-12-17 19:20:10 490
原创 多线程调用函数理解
1.多线程调用同一个函数的理解多线程调用一个函数和一个线程调用一个函数是一样的,关键要看你的函数是否使用了一些全局的东西。函数的调用有自己的栈,每个函数的栈都是独立的.唯一要考虑的是,在调用这个函数中,如果函数里面有全局变量或者静态变量,则需要考虑并发的问题,都是局部变量则没有任何影响(局部变量都被分配在栈上)。2.线程安全函数和可重入函数 线程安全的(Thread-S
2012-12-13 11:16:29 4249
转载 Linux 字符类别判断
一般情况下判断一个字符为大写的方法用if 语句来判断,比如[cpp] view plaincopyIf (c>=’A’&&creturn true; 小写的方法与之类似因为字符A-Z,a-z在ASCII上是连续的,所以一个范围判断就可以了,假设某些字符在ASCII上是不连续的,比如十六进制数,0-9,A-H,那么if语句
2012-12-13 10:45:17 811
转载 NUll and 0 Pointer
在阅读本文之前,希望读者对WINDOWS下程序的运行方式以及内存管理机制有基本的了解。 一、NULL指针和零值指针(null pointer and zero value pointer) 我们查看一下C++标准库定义的NULL指针 // Define NULL pointer value #ifndef NU
2012-12-11 18:43:51 421
转载 深入理解Linux内核list_entry()宏
list_entry()宏:--------------------------------------------------------------------------------------------------/*** list_entry - get the struct for this entry* @ptr: the &struct lis
2012-12-11 15:05:17 812
转载 C 字符数组和字符串
一、字符数组和字符串的重定义字符数组,完整地说叫字符类型的数组。字符数组不一定是字符串。字符串是最后一个字符为NULL字符的字符数组。字符串一定是字符数组。字符数组的长度是固定的,其中的任何一个字符都可以为NULL字符。字符串只能以NULL结尾,其后的字符便不属于该字符串。strlen()等字符串函数对字符串完全适用,对不是字符串的字符数组不适用。#include #inc
2012-12-11 13:19:18 411
原创 stl containers inspectors for gdb
# std::vector -- via pvector command# std::list -- via plist command# std::map -- via pmap command# std::multimap -- via pmap command# std::set -- via pset command#
2012-12-10 09:36:25 419
转载 C/C++ 通过初始化列表和构造函数内赋值初始化成员变量的区别
一般我们进行成员变量初始化用两种方法第一种是通过在构造函数内赋值class Point{public: Point(){ _x = 0; _y = 0;}; Point( int x, int y ){ _x = 0; _y = 0; }private: int _x, _y;};第二种是使用初始化列表 class Point{
2012-12-06 14:30:50 408
转载 Raw flash vs. FTL devices
FTL stands for "Flash Translation Layer" and it is software which emulates a block device on top of flash hardware. At early days FTL ran on the host computer. For example, old PCMCIA flash devices we
2012-12-05 12:59:33 1066
Linux课件ppt及常用Linux命令集
2009-06-19
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人