C++ 类的初始化

C++类的初始化有多种形式。

如:

Stu s1;
Stu s2=Stu();
Stu * s3=new Stu;
Stu * s4=new Stu();

Stu s5=Stu(8,"star");
Stu * s6=new Stu(12,"hsu");

其中s3、s4、s6是指向Stu的指针。注意他们访问类成员的形式。

简单示例:

#include <iostream>
#include <cstring>
using namespace std;

class Stu
{
private:
    int id;
	char name[20];
public:
	Stu();
	Stu(int uid,const char * uname);
	int getid();
	char * getname();
	void showname();
};

Stu::Stu()
{
	id=1;
	strcpy(name,"hsing hsu");
}

Stu::Stu(int uid,const char * uname)
{
	id=uid;
	strcpy(name,uname);
}
int Stu::getid()
{
	return id;
}

char * Stu::getname()
{
	return name;
}

void Stu::showname()
{
	cout<<name<<endl;
}

int main()
{
	/***********************************************/
	Stu s1;
	Stu s2=Stu();
	Stu * s3=new Stu;
	Stu * s4=new Stu();

	s1.showname();
	s2.showname();
	s3->showname();
	s4->showname();

	cout<<s1.getid()<<endl;
	cout<<s1.getname()<<endl;
	/***********************************************/
	Stu s5=Stu(8,"star");
	Stu * s6=new Stu(12,"hsu");

	s5.showname();
	s6->showname();

	cout<<(*s6).getid()<<endl;
	/***********************************************/

	return 0;
}

运行结果:
hsing hsu
hsing hsu
hsing hsu
hsing hsu
1
hsing hsu
star
hsu
12

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值