Ce code définit une Person
classe nommée , qui a trois fonctions membres et trois variables membres privées.
- La fonction membre
setName
est utilisée pour définir le nom, elle accepte unstring
paramètre de typename
et l'affecte à la variable membrem_Name
. - La fonction membre
getName
est utilisée pour obtenir le nom et renvoiem_Name
la valeur de la variable membre. - La fonction membre
getAge
est utilisée pour obtenir l'âge, elle renvoiem_Age
la valeur de la variable membre. - La fonction membre
setAge
est utilisée pour définir l'âge, elle accepte unint
paramètre de typeage
et l'affecte à la variable membrem_Age
. Avant d'attribuer une valeur, il vérifie si l'âge est dans la plage valide (entre 0 et 150 ans), sinon, il affichera une invite et un retour. - La fonction membre
setLover
est utilisée pour définir l'amant, elle prend unstring
paramètre de typelover
et l'affecte à la variable membrem_Lover
. - Les variables membres privées de la classe incluent :
m_Name
: Nom, lisible et inscriptible.m_Age
: âge, lecture seule.m_Lover
: Amant, il suffit d'écrire.
Dans la fonction, un objet de la classe main
est d'abord créé . Ensuite, définissez et récupérez les propriétés de l'objet en appelant les fonctions membres :Person
p
- Utilisez
setName
la fonction pour définir le nom comme "Zhang San", et utilisezgetName
la fonction pour obtenir et sortir le nom. - Utilisez
setAge
la fonction pour définir l'âge sur 50 ans, puis utilisezgetAge
la fonction pour obtenir et afficher l'âge. - Utilisez
setLover
la fonction pour définir l'amant comme "Aoi", mais commem_Lover
il s'agit d'une variable membre privée et en écriture seule, elle ne peut pas être directement accessible ni sortie.
Enfin, en system("pause")
arrêtant le programme, vous pouvez observer la sortie.
Résumé : Ce code définit une Person
classe avec des attributs de nom, d'âge et d'amant, et fournit les fonctions de réglage et d'obtention correspondantes. Parmi eux, l'attribut name est accessible en lecture et en écriture, l'attribut age est en lecture seule et l'attribut amoureux est en écriture seule. Les propriétés sont manipulées et accessibles via les fonctions membres de l'objet.
#include<iostream>
#include<string>
using namespace std;
class Person {
public:
// 姓名设置可读可写
void setName(string name) {
m_Name = name;
}
string getName() {
return m_Name;
}
// 获取年龄
int getAge() {
return m_Age;
}
// 设置年龄
void setAge(int age) {
if (age < 0 || age > 150) { // 检查年龄是否在有效范围内
cout << "你个老妖精!" << endl;
return;
}
m_Age = age;
}
// 情人设置为只写
void setLover(string lover) {
m_Lover = lover;
}
private:
string m_Name; // 可读可写的姓名属性
int m_Age; // 只读的年龄属性
string m_Lover; // 只写的情人属性
};
int main() {
Person p;
// 姓名设置
p.setName("张三");
cout << "姓名: " << p.getName() << endl;
// 年龄设置
p.setAge(50);
cout << "年龄: " << p.getAge() << endl;
// 情人设置
p.setLover("苍井");
// cout << "情人: " << p.m_Lover << endl; // 只写属性,不可以读取
system("pause");
return 0;
}