C++网易云课堂开发工程师-头文件与类声明

区分Class的分类有两大经典,1包含指针的(complex),2不包含指针的(string)。

1.complex

类分为:数据成员部分(在内存中占有数据成员的大小,数据可能会有很多份)与函数部分(只有一份

2.string

类中:仅包含一个指针(这里理解为这一个指针指向,数据成员),创建出的每一个数据成员的大小实际上仅包含一个指针。

 

3.C++ programs代码基本形式

.h(header files) Classes Declaration(声明)

.cpp()

.h()标准库,引入标准库采用尖括号的形式。

4.防卫式声明(使得含入include的次序不受任何影响)

#ifndef  _COMPLEX_

#define  _COMPLEX_

#endif

5.头文件的布局

#ifndef _COMPLEX_

#define _COMPLEX_                                                                               防卫式声明

----------------------------------------------------------------------

#include <cmath>

class ostream;

class complex;   

complex& _doapl(complex* ths, const complex& r);                               前置声明

----------------------------------------------------------------------

class complex{                                                                                           类声明

....

};               

----------------------------------------------------------------------

complex::function...                                                                                   类定义 

 6.class的声明(declaration)

template<typename T>                                                                             模板的引入

class complex{                                                                                           class head

  public:

   complex(T r = 0, T i = 0): re (r), im (r) {}

   complex& 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);

}

 

 

 

posted @ 2018-08-19 11:48  sky-zz  阅读(179)  评论(0编辑  收藏  举报