C++随笔
头文件防卫式声明
防止头文件重复包含
方式一:
#ifndef __SOMEFILE_H__
#define __SOMEFILE_H__
... ... // 声明、定义语句
#endif
方式二:
pragma once //防止头文件重复包含
头文件的布局
#ifndef HEAD_H
#define HEAD_H
#include <cmath>
//******* forward declarations *******
class ostream;
class complex;
complex& _doapl(complex& ths, const complex& r);
//-----------------------------------------------
//******* class declarations *******
class complex // class head
{ // class body
/*
……
……
*/
void function();
};
//-----------------------------------------------
//******* class definition *******
void complex::function()
{
}
//-----------------------------------------------
#endif
inline(内联)函数
inline函数仅仅是一个对编译器的建议,所以最后能否真正内联,看编译器的意思。
构造函数:尽量用列表初始化
complex (double r = 0, double i = 0) : re (r), im (i){}
等同于
complex (double r = 0, double i = 0)
{
this.re = r;
this.im = i;
}