利用宏定义实现C++程序在Unix和Win32环境下的通用性
摘要:【转】 1.1. 宏定义软件的代码,从跨平台的角度来看,可以分为平台相关的和平台无关的。采用C/C++编写的软件,在进行移植时,平台无关的的代码基本上不需要做大的改动,但平台相关的代码需要做很大的调整。这里所说的平台包括操作系统和编译器,为了能够做到让编译器在编译时根据当前的平台状况来自动选择需要编译的代码,我们一般需要用C/C++的编译宏指令来实现。举个例子,下面的一段代码是得到系统当前的时间并...
阅读全文
[转]浅谈C++指针直接调用类成员函数
摘要:找了一番之后发现这篇文章讲的很清楚。 传送门
阅读全文
类间调用inline函数的效率
摘要:问题描述: class A { public: int x, y, k, NY; inline int f(int i, int j, int k) {return ((i)*(NY + 1) * 9 + (j) * 9 + (k));}; int f_notInline(int i, int j, int k); protected: private: }; int A::f...
阅读全文
C++ inline函数与编译器设置
摘要:1. 经过测试#define与inline的速度几乎没有区别。 2. inline函数更为安全,有效避免了#define二义性问题。inline是真正的函数,而#define只是在字符串意义上的宏替换。 3. 在开发工程的时候inline可以封装在类中,而#define不行,#define容易产生重复定义的问题。 4. inline函数对编译器来说只是建议,因此编译器在编译的时候不一定按照inli...
阅读全文