类与对象

来源:互联网 发布:最游记一键淘宝端 编辑:程序博客网 时间:2024/04/30 15:50
实验内容:1.定义一个学生类Student,学生类中有3 个私有数据成员:num(学号)、name(姓名)、age(年龄);3 个公有成员函数:Student(构造函数)、display、~Student(析构函数)。使用构造函数为Student 类的对象赋值(name 使用动态内存分配空间),display 负责显示学生的基本信息,在析构函数中释放动态分配的内存。

分析:在构造函数中为name 动态分配内存,然后赋值,在析构函数中释放。

实验心得://很多情况下判断一个字符串长度需要知道其在哪里结束,这就是结束符'\0',所以你需要加一,strlen("string")返回6,事实上这个字符串占7个字节,如果你
//name=new char[6];
//strcpy(name,"string");
//它会复制7个字节,而你只分配了6个字节给name,



#include <iostream>#include <string>using namespace std;class Student{private:int age,num;char *name;//public:Student(char *name1,int age1,int num1);    ~Student();void display();};Student::Student(char *name1,int age1,int num1){   name=new char[strlen(name1)+1];//    strcpy(name,name1);//age=age1;num=num1;}void Student::display(){   cout<<"name: "<<name<<endl;    cout<<"age: "<<age<<endl;cout<<"num: "<<num<<endl;}Student::~Student(){   delete []name;}int main(){   Student s1("huang yu",21,76);    s1.display();return 0;}

运行结果:


0 0
原创粉丝点击