C++学习(2019_2)头文件与类声明
1.头文件中的防卫式声明
防卫式声明(guard):
#ifndef __COMPLEX__
#define __COMPLEX__
...
...
...
#endif
作用是不会再次进入
2.头文件布局
前置声明+类声明+类定义
2.1 class的声明
格式:
class complex //类头
{ //类主体
public:
complex (double r = 0,double ii = 0)
:re(r),im(i)
{ }
comlpex& operator += (const complex&);
double real () const { return re; }
double imag () const { return im; }
private:
double re, im;
friend complex& __doapl ( complex*, const complex& );
};
补:
template<typename T>
class complex //类头
{ //类主体
public:
complex (T r = 0,T ii = 0)
:re(r),im(i)
{ }
comlpex& operator += (const complex&);
T real () const { return re; }
T imag () const { return im; }
private:
T re, im;
friend complex& __doapl ( complex*, const complex& );
};
//使用
{
complex<double> c1(2.5,1.5);
complex<int> c2(2,6);
}