#include <iostream>
#include <string>
#include <Windows.h>
using namespace std;
//定义“人类”
class Human {
public: //公有的, 公共的
void eat(); //类里面的方法,又称为成员函数
void sleep();
void work();
void play();
string getName();
int getAge();
int getSalary();
private:
string name;
int age;
int salary;
};
void Human::eat() {
cout << "吃鸡屁股, 喝可乐!" << endl;
}
void Human::sleep() {
cout << "夜深了!上床睡觉!" << endl;
}
void Human::work() {
cout << "我在工作..." << endl;
}
void Human::play() {
cout << "玩奇幻角色扮演!" << endl;
}
string Human::getName() {
return name;
}
int Human::getAge() {
return age;
}
int Human::getSalary() {
return salary;
}
int main(void) {
Human zhangshan;
zhangshan.eat();
zhangshan.play();
zhangshan.sleep();
zhangshan.work();
cout << zhangshan.age << endl;
system("pause");
return 0;
}
编译器提示:(VC++2010)
如果想访问private中的成员怎么办?
任性一点这样做:
#include <iostream>
#include <string>
#include <Windows.h>
using namespace std;
//定义“人类”
class Human {
public: //公有的, 公共的
void eat(); //类里面的方法,又称为成员函数
void sleep();
void work();
void play();
string getName();
int getAge();
int getSalary();
//private:
public:
string name;
int age;
int salary;
};
void Human::eat() {
cout << "吃鸡屁股, 喝可乐!" << endl;
}
void Human::sleep() {
cout << "夜深了!上床睡觉!" << endl;
}
void Human::work() {
cout << "我在工作..." << endl;
}
void Human::play() {
cout << "玩奇幻角色扮演!" << endl;
}
string Human::getName() {
return name;
}
int Human::getAge() {
return age;
}
int Human::getSalary() {
return salary;
}
int main(void) {
Human zhangshan;
zhangshan.eat();
zhangshan.play();
zhangshan.sleep();
zhangshan.work();
cout << zhangshan.age << endl;
system("pause");
return 0;
}
将private改成public, 这样编译器是通过的:
但是这样是不安全的!这样是不合理的写法!会泄露客户隐私!