C++ 类成员方法的两种定义方法

Android学到深处还是得回到c/c++,基础不扎实,从头开始.


#include 
using namespace std;

class Human
{
public:
	//方法体写在类内部
	int getAge(){
		return age;
	};
	void setAge(int arg){age=arg;}
	//不写方法体,在外部补充
	void setName(char *arg);
	char* getName();
private:
	char* name;
	int age;
};
//方法体写在类外部
char* Human::getName()
{
	return name;
};
void Human::setName(char *arg)
{
	//使用strcpy会报错,貌似是因为name没有初始化
	name=arg;
};

int main()
{
	Human mike;
	mike.setAge(10);
	mike.setName("mike");
	cout<

区别:方法体在类内部的是内联(inline)函数,编译器在编译到调用该方法的地方,直接用方法体替换方法名,会使编译出的可执行文件体积变大?我是这么理解的。

© 2013, 冰冻鱼. 请尊重作者劳动成果,复制转载保留本站链接! 应用开发笔记