设计一个student,有私有成员,也有两个公有成员函数
时间: 2024-01-20 21:03:44 浏览: 25
好的,下面我来为你设计一个student类:
```python
class Student:
def __init__(self, name, age, grade):
self.__name = name
self.__age = age
self.grade = grade
def get_name(self):
return self.__name
def get_age(self):
return self.__age
```
这个student类有三个私有属性:姓名(name)、年龄(age)和成绩(grade),以及两个公有方法:get_name()和get_age()。其中,get_name()方法用于获取学生的姓名,get_age()方法用于获取学生的年龄。成绩是公有属性,可以直接通过对象访问。在初始化方法中,我们使用了双下划线(__)将姓名和年龄设置为私有属性,这样外部无法直接访问和修改这些属性,需要通过公有方法来获取或修改。
相关问题
设计一个student类,它包含三个私有数据成员:int num、string name、char sex;两个公有的成员函数:set()和display(),分别用来设置一个学生的信息和显示该学生的
信息。
class Student {
private:
int num;
string name;
char sex;
public:
void set(int n, string na, char s) {
num = n;
name = na;
sex = s;
}
void display() {
cout << "学号:" << num << endl;
cout << "姓名:" << name << endl;
cout << "性别:" << sex << endl;
}
};
在student.h中声明一个类student,其中包括年龄age,学号num,sex,name (均为私有数据成员)还包括两个公有成员函数set-value ()、display ()
下面是student.h的代码:
```cpp
class student{
private:
int age;
int num;
char sex;
char name[20];
public:
void set_value(int a, int n, char s, const char* nm);
void display();
};
```
其中,set_value()函数用于设置学生的信息,display()函数用于输出学生的信息。下面是student.cpp的代码实现:
```cpp
#include <iostream>
#include <cstring>
#include "student.h"
using namespace std;
void student::set_value(int a, int n, char s, const char* nm){
age = a;
num = n;
sex = s;
strcpy(name, nm);
}
void student::display(){
cout << "姓名:" << name << endl;
cout << "学号:" << num << endl;
cout << "性别:" << sex << endl;
cout << "年龄:" << age << endl;
}
```
在main函数中,可以这样使用:
```cpp
#include <iostream>
#include "student.h"
using namespace std;
int main(){
student s;
s.set_value(18, 10001, 'M', "张三");
s.display();
return 0;
}
```
输出结果为:
```
姓名:张三
学号:10001
性别:M
年龄:18
```