C++动态数组初始化的问题,求帮忙解答,谢谢! 5
usingnamespacestd;#include<string>classStudent{private:intage;char*name;public:Studen...
using namespace std;
#include<string>
class Student
{
private:
int age;
char *name;
public:
Student(int m,char *n)
{
name=new char[10];
age=m;
name=n;
}
Student()
{
delete []name;
name=new char[8];
age=0;
name="unnamed";
}
~ Student()
{
delete []name;
};
void SetMember(int m,char *n)
{
age=m;
name=n;
}
int Getage ()
{
return age;
}
char *Getname ()
{
return name;
}
};
int main()
{
int i;
Student stu[3]={Student(13,"wang"),Student(),Student()} ; // 第一个元素调用带能构造函数初始化
stu[2].SetMember(12,"zhang");
for(i=0;i<2;i++)
{
cout<<stu[i].Getage()<<stu[i].Getname();
}
return 0;
}
/*
成绩: 100 / 折扣: 0.8
定义一个学生类 Student ,设计私有数据成员:
年龄 int age;
姓名 char *name;
公有成员函数:
构造函数 带参数的构造函数 Student(int m,char *n) ;
不带参数的构造函数 Student ( ) ;
析构函数 ~ Student ( ) ; 释放由 name 申请的动态空间
改变数据成员值函数 void SetMember(int m,char *n);
获取数据成员函数 int Getage ( );
char *Getname ( );
在 main() 中定义一个有 3 个元素的对象数组并分别初始化,然后输出对象数组的信息, main 函数的部分内容如下:
int main ( )
{
Student stu[3]={Student(13,"wang")} ; // 第一个元素调用带能构造函数初始化
………..
// 第二、三个元素由无参构造函数初始化,默认年龄为 0 ,姓名为 "unnamed"
stu[2]. SetMember(12,"zhang"); // 修改第三个元素的数据成员值
………. // 输出部分
return 0;
}
*/ 展开
#include<string>
class Student
{
private:
int age;
char *name;
public:
Student(int m,char *n)
{
name=new char[10];
age=m;
name=n;
}
Student()
{
delete []name;
name=new char[8];
age=0;
name="unnamed";
}
~ Student()
{
delete []name;
};
void SetMember(int m,char *n)
{
age=m;
name=n;
}
int Getage ()
{
return age;
}
char *Getname ()
{
return name;
}
};
int main()
{
int i;
Student stu[3]={Student(13,"wang"),Student(),Student()} ; // 第一个元素调用带能构造函数初始化
stu[2].SetMember(12,"zhang");
for(i=0;i<2;i++)
{
cout<<stu[i].Getage()<<stu[i].Getname();
}
return 0;
}
/*
成绩: 100 / 折扣: 0.8
定义一个学生类 Student ,设计私有数据成员:
年龄 int age;
姓名 char *name;
公有成员函数:
构造函数 带参数的构造函数 Student(int m,char *n) ;
不带参数的构造函数 Student ( ) ;
析构函数 ~ Student ( ) ; 释放由 name 申请的动态空间
改变数据成员值函数 void SetMember(int m,char *n);
获取数据成员函数 int Getage ( );
char *Getname ( );
在 main() 中定义一个有 3 个元素的对象数组并分别初始化,然后输出对象数组的信息, main 函数的部分内容如下:
int main ( )
{
Student stu[3]={Student(13,"wang")} ; // 第一个元素调用带能构造函数初始化
………..
// 第二、三个元素由无参构造函数初始化,默认年龄为 0 ,姓名为 "unnamed"
stu[2]. SetMember(12,"zhang"); // 修改第三个元素的数据成员值
………. // 输出部分
return 0;
}
*/ 展开
1个回答
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询