-
6-10c++析构函数
定义格式:~类名()
格式、功能、用法
如果没有自定义的析构函数则系统自动生成
析构函数在对象销毁时自动调用查看全部 -
6-7c++拷贝构造函数
定义格式:类名(const类名&变量名)
构造函数总结:
构造函数:无参构造函数————默认构造函数
有参构造函数——参数带默认值、参数无默认值查看全部 -
3、初始化列表;
class circle
{
public:
circle():m_dpi(3.14){}
private:
const double m_dpi;
}查看全部 -
3、初始化列表;
class circle
{
public:
circle(){m_dpi=3.14}
private:
const double m_dpi;
}查看全部 -
6-4构造函数初始化列表
默认构造函数
构造函数初始化列表查看全部 -
5\重载构造函数
class student
{
public:
student(){m_strname="jim";}
student(string name)
{m_strname=name;}
private:
string m_strname;
};查看全部 -
3、有参构造函数
class student
{
public:
student(string name)
{m_strname=name;}
private:
string m_strname;
}
无参构造函数
class student
{
public:
student(){m_strname="jim";"}
private:
string m_strname;
};查看全部 -
6-1c++构造函数讲解
1、对象结构
内存分区:栈区、堆区、全局区、常量区、代码区
2、构造函数的规则和特点
构造函数在对象实例化是被自动调用
构造函数与类同名
构造函数没有返回值
构造函数可以有多个重载形式
实例化对象时仅用到一个构造函数
当用户没有定义构造函数时,编译器自动生成一个构造函数查看全部 -
5-1
类外定义
1、例如
class car
{
public:
void run();
void stop();
void changespeed();
}
void car::run(){}
void car::stop(){}
void car::changespeed(){}查看全部 -
3-1
1、char 数组 字符串类型:string类型2、string s1; //s1为空串
string s2(“abc”);用字符串字面值初始化s2
string s3(s2);//讲s3初始化为s2的一个副本
string s4(n,‘c’) 讲s4初始化为字符‘c’的n个副本3、string的常用操作
查看全部 -
4-1
数据的封装
1、在C++ 语言中class是定义类的关键字,C++中也可以使用struct定义类。
两者区别是,用class定义的类,如果数据成员或成员函数没有说明则默认为private(私有)的,而用struct定义的,默认为public(公共)的。
2、get和set函数查看全部 -
2-1c++类和对象1、 关键字——class dog——类名
{
char name[20];
int age; ——数据成员
int type;
void speak();
void run(); ——成员函数
}
结论:目的不同,抽象出的信息不同
2、封装,即隐藏对象的属性和实现细节,仅对外公开特定功能
选择性爆漏
3、访问限定符 public:公共的、protected:受保护的、private:私有的
class tv
{
public:
char name【20】;
int type;
void changevol();——希望暴露
void power();private:
电阻调节————希望隐藏
像素调节
};查看全部 -
成员函数关系图
查看全部 -
析构函数的特点
查看全部 -
初始化列表特性: 1、初始化列表先于构造函数执行 2、---------只能用于构造函数 3、---------可以同时初始化多个数据成员 格式:构造函数:数据成员(),数据成员().....(必须赋值) { }<p>注意:在给数据成员赋值时只能用 ( ),用逗号隔开。<br /></p>查看全部
举报