-
默认构造函数是不需要传参的构造函数,代码中两种都是
查看全部 -
S6是非法的,只有通过字符串
查看全部 -
析构函数
定义格式:~类名()
特性: 如果没有自定义的析构函数则系统自动生成
析构函数在对象销毁时自动调用析构函数无返回值、参数,不能重载
拷贝构造函数 只有一个const型参数,参数前加一个&引用符号
析构函数 不加任何参数,类名前加一个 ~ 符号
查看全部 -
构造函数的规则
查看全部 -
内存分区,栈系统分配,堆自定义
查看全部 -
new是什么东西?查看全部
-
函数调用历程
查看全部 -
定义一个Student类,包含名字一个数据成员,定义无参构造函数、有参构造函数、拷贝构造函数、析构函数及对于名字的封装函数,在main函数中实例化Student对象,并访问相关函数,观察运行结果。
#include <iostream>
#include <string>
using namespace std;class Student
{
public:
Student()
{
m_strName = "";
}
Student(string _name)
{
m_strName = _name;
}
Student(const Student& stu){};
~Student(){};
void setName(string _name)
{
m_strName = _name;
}
string getName()
{
return m_strName;
}
private:
string m_strName;
};int main(void)
{
Student *stu = new Student;
stu->setName("慕课网");
cout << stu->getName() << endl;
delete stu;
stu = NULL;
return 0;
}查看全部 -
初始化列表,冒号语法
查看全部 -
对象的生命历程
查看全部 -
析构函数的特性
查看全部 -
初始化列表:
用于构造函数对数据成员进行初始化,可以初始化const修饰的常量,格式如下:
Teacher::Teacher(string name, int age):m_strName(name),m_iAge(age){}
查看全部 -
如果自己构建了普通构造函数和拷贝构造函数,则系统不再定义,初始化列表必须跟在构造函数后面
查看全部 -
如果有参构造函数的全部参数都带有默认值,则为默认构造函数
查看全部 -
拷贝构造函数特点
查看全部
举报