1、类的成员函数定义
1、成员函数声明和定义(实现)都放在类体中;此时编译器会当作内联函数处理
// .h
class Add{
public:
int add (int a, int b = 1){
return a + b;
}
private:
int _userName = 1;
};
2、声明放在.h
的类体中,定义(实现)放在.cpp
中
//.h
class Add{
public:
int add (int a, int b = 1);
private:
int _userName = 1;
};
//.cpp
int Add::add(int a, int b) {
return a + b;
}
建议:小的函数直接在类里面定义,当作内联函数;大的在类中声明,类外定义
2、类的作用域
类定义了一个新的作用域,类的所有成员的访问权限都在类的作用域中。 在类体外定义成员时需要用 ::
作用域解析符指明成员属于那一个类。
class Person
{
public:
void PrintPersonInfo();
private:
char _name[20];
char _gender[3];
int _age;
};
// 这里需要指定PrintPersonInfo是属于Person这个类域
void Person::PrintPersonInfo()
{
cout<<_name<<" "_gender<<" "<<_age<<endl;
}