demo_constructor_09.cpp

来自「对于一个初涉VC++的人来书」· C++ 代码 · 共 45 行

CPP
45
字号

//***************************************************

# include <iostream.h>
# include <string.h>
# include <conio.h>

class StudentID
{
public:
	StudentID(int id=0)
	{
		value=id;
		cout<<"Assigning student id "<<value<<endl;
	}
	~StudentID()
	{
		cout<<"Destructing id "<<value<<endl;
	}
protected:
	int value;
};

class Student
{
public:
//	Student(char* pName="noName",int sID=0):id(sID) //冒号语法
//	Student(char* pName="noName",int sID=0):id() //这一句和下一句等价
	Student(char* pName="noName",int sID=0)
	{
		cout<<"constructing student: "<<pName<<endl;
		strncpy(name,pName,sizeof(name));
		name[sizeof(name)-1]='\0';
	}
protected:
	char name[20];
	StudentID id;
};

void main()
{
	Student s("Randy",9818);
	getch();
	Student t("Jenny");
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?