码迷,mamicode.com
首页 > 编程语言 > 详细

C++发哥笔记(1):class的分离式写法

时间:2017-05-09 15:47:38      阅读:154      评论:0      收藏:0      [点我收藏+]

标签:分离   变量   void   test   this   声明   .cpp   符号   注意   

把class的成员函数的定义写在class之外,即class的大括号的外面。

例如,

/////////// main.cpp ////////////

class Object {

  public: int x;

  void Test();       // (1) 成员函数的声明

};

 

void Object::Test()   //(2) 成员函数写在外边,加上类名限定

{ }

 

总结一下这种写法:

1:成员变量:还是写在类里面

2:成员函数:在类里保留其函数声明,而函数的定义写在类体之外。

3:写在外面的时候,要加上类名限定(Object::)

其中,::可以理解为是表示范围的符号

 

分开为头文件和源文件

按照一贯的原则:类型定义写在头文件里,函数实现写在源文件里。

/////////// Object.h ////////////

class Object {

public:

  int x;

  void Test();

};

/////////// Object.cpp ////////////

#include <stdio.h>

#include "Object.h"

void Object::Test() {

  printf("x is %d \n", x);        // 仍然可以省略this->

}

注意:

1.不一定要把所有函数定义都拿出来,可以只拿一部分出来。 如果写在类体里面,编译器按照inline的规则编译它 (inline在第8章定义) 类体之外,则是普通的函数

2. 在类体中,成员函数与成员变量的排列顺序是自由的。

 

C++发哥笔记(1):class的分离式写法

标签:分离   变量   void   test   this   声明   .cpp   符号   注意   

原文地址:http://www.cnblogs.com/hustercn/p/6830651.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!