包含构造函数和析构函数的C++程序。

包含构造函数和析构函数的C++程序。

法一:

#include
#include
using namespace std;

class Student//声明Student类 
{
	public:
		Student(int n, string nam, char s)//定义有参数的构造函数 
		{
			num=n;
			name=nam;
			sex=s;
			cout<<"Constructor called. "<<endl;//输出有关信息 
		}
		
		~Student()//定义析构函数 
		{
			cout<<"Destructor called. "<<endl;//输出有关信息 
		}
		
		void display()//定义成员函数 
		{
			cout<<"num: "<<num<<endl;
			cout<<"name: "<<name<<endl;
			cout<<"sex: "<<sex<<endl<<endl;
		}
		
	private:
		int num;
		string name;
		char sex;
};

int main()//主函数 
{
	Student stud1(10010,"Wang_li",'f');//定义对象stud1 
	stud1.display();//输出学生1的数据 
	
	Student stud2(10011,"Zhang_fang",'m');//定义对象stud2 
	stud2.display();//输出学生2的数据 
	
	return 0;
}

法二:

#include
#include
using namespace std;

class Student//声明Student类 
{
	public:
		Student(int n, const char *nam, char s)//定义有参数的构造函数 
		{
			num=n;
			strcpy(name, nam);
			sex=s;
			cout<<"Constructor called. "<<endl;//输出有关信息 
		}
		
		~Student()//定义析构函数 
		{
			cout<<"Destructor called. "<<endl;//输出有关信息 
		}
		
		void display()//定义成员函数 
		{
			cout<<"num: "<<num<<endl;
			cout<<"name: "<<name<<endl;
			cout<<"sex: "<<sex<<endl<<endl;
		}
		
	private:
		int num;
		char name[100];
		char sex;
};

int main()//主函数 
{
	Student stud1(10010,"Wang_li",'f');//定义对象stud1 
	stud1.display();//输出学生1的数据 
	
	Student stud2(10011,"Zhang_fang",'m');//定义对象stud2 
	stud2.display();//输出学生2的数据 
	
	return 0;
}

法三:

#include
#include
using namespace std;

class Student
{
	public:
		Student(int n, const char *nam, char s)
		{
			num=n;
			char *p = name;
			while (*p++=*nam++);

			sex=s;
			cout<<"Constructor called. "<<endl;
		}
		
		~Student()
		{
			cout<<"Destructor called. "<<endl;
		}
		
		void display()
		{
			cout<<"num: "<<num<<endl;
			cout<<"name: "<<name<<endl;
			cout<<"sex: "<<sex<<endl<<endl;
		}
		
	private:
		int num;
		char name[100];
		char sex;
};

int main()
{
	Student stud1(10010,"Wang_li",'f');
	stud1.display();
	
	Student stud2(10011,"Zhang_fang",'m');
	stud2.display();
	
	return 0;
}

法四:

#include
#include
using namespace std;

class Student
{
	public:
		Student(int n,const char nam[],char s)
		{
			num=n;
			const char *p;
			int i=0;
			for(p=nam;nam[i]!='\0';p++,i++)
			{
				name[i]=*p;
			}
			name[i]='\0';
			sex=s;
			cout<<"Constructor called. "<<endl;
		}
		
		~Student()
		{
			cout<<"Destructor called. "<<endl;
		}
		
		void display()
		{
			cout<<"num: "<<num<<endl;
			cout<<"name: "<<name<<endl;
			cout<<"sex: "<<sex<<endl<<endl;
		}
		
	private:
		int num;
		char name[100];
		char sex;
};

int main()
{
	Student stud1(10010,"Wang_li",'f');
	stud1.display();
	
	Student stud2(10011,"Zhang_fang",'m');
	stud2.display();
	
	return 0;
}

你可能感兴趣的:(包含构造函数和析构函数的C++程序。)