📄 eg2.cpp
字号:
// eg2.cpp : Defines the entry point for the console application.
//
#include "stdafx.h"
#include <stdio.h>
#include <string.h>
// 类
class Student
{
private: // 私有
char m_sName[40]; // 姓名
int m_nID; // 学号
int m_nAge; // 年龄
int m_nClassNo; // 班号
public: // 公有
// 构造函数
Student(char* sName, int nID,
int nAge, int nClassNo)
{
strcpy(m_sName,sName);
m_nID = nID;
m_nAge = nAge;
m_nClassNo = nClassNo;
printf("%s 构造函数4被调用了!\n",
m_sName);
}
// 构造函数
Student(char* sName)
{
strcpy(m_sName,sName);
m_nID = 0;
m_nAge = 0;
m_nClassNo = 0;
printf("%s 构造函数1被调用了!\n",
m_sName);
}
// 默认构造函数
Student()
{
strcpy(m_sName,"无名氏");
m_nID = 0;
m_nAge = 0;
m_nClassNo = 0;
printf("%s 默认构造0被调用了!\n",
m_sName);
}
// 析构函数
~Student()
{
printf("%s 析构函数被调用了!\n",
m_sName);
}
void InitStudent(char* sName, int nID,
int nAge, int nClassNo)
{
strcpy(m_sName,sName);
m_nID = nID;
m_nAge = nAge;
m_nClassNo = nClassNo;
}
void ShowInfo()
{
printf("姓名: %s 学号:%d 年龄:%d 班号:%d\n",
m_sName, m_nID, m_nAge, m_nClassNo);
}
void UnitStudent()
{
// Nothing need to do.
}
char* GetName()
{
return m_sName;
}
int GetID()
{
return m_nID;
}
int GetAge()
{
return m_nAge;
}
int GetClassNo()
{
return m_nClassNo;
}
void SetAge(int nAge)
{
if (nAge > 0 && nAge < 150)
m_nAge = nAge;
}
};
Student Jackson("Jackson");
int main(int argc, char* argv[])
{
int i = 4;
Student Jack("Jack", 30, 21, 101);// 触发构造函数
Student Tom("Tom"); // 触发构造函数
{
int j = 5;
Student Test("test");
static Student Test2("test2");
}
Student Jane; // 触发默认构造函数
return 0;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -