二级c++——基本操作题小结
2015-09-05 10:36
274 查看
经过这几天对二级c++的分类学习,感觉还是有规律可循的,基于我对基本操作的学习,总结知识点如下:
构造函数:专门用于对象初始化的函数,它是与类名相同的,在建立对象时根据参数自动调用的函数。作为类的成员函数,构造函数可以直接访问类的所有数据成员,可以是内联函数,可以不带任何参数,可以带有参数以及默认形参值,还可以重载,用户可以根据不同问题的具体需要,有针对性地设计合适的构造函数将对象初始化为特定的状态。
构造函数的特性:*构造函数的名必须与定义它的类同名;
*构造函数没有返回值。如果在构造函数前加void,int,double等是错误的;
*构造函数被声明定义为公有函数;
*构造函数在建立时由系统自动调用;
析构函数:也译拆构函数,是在对象消失之前的瞬间自动调用的函数,形式:~构造函数();~为非运算符;
析构函数也是类的一个特殊的公有函数成员,其特点如下:
*析构函数没有任何参数,不能被重载,但可以是虚函数,一个类只有一个虚构函数;
*析构函数没有返回值;
*析构函数名与类名相同,但在类名前加上一个逻辑非运算符“~”,以示与构造函数对比区别;
*析构函数一般由用户自己定义,在对象消失时有系统自动调用,如果用户没有调用析构函数,系统将自动生成一个不做任何事的默认析构函数;
注意:在对象消失时清理工作并不是有析构函数完成,而是靠用户在析构函数中添加清理语句完成。
delete语句语法:delete[ ]+要释放的指针(指针变量名称);
函数重载:就是两个以上的函数,取相同的函数名,但是形参的个数和类型不同,编译器根据实参和形参的类型及个数的最佳匹配,自动决定调用哪一个函数。
类成员由数据成员和函数成员构成;函数成员又称成员函数,其格式为:返回值类型
类名 :: 成员函数名(形参表)
{
函数体;
}
其中,::是类的作用域分辨符,用在类名后成员函数前,表明后面的成员函数属于前面的那个类。
成员的存取权限(访问权限):存取控制属性:公有类型public,保护类型protected,私有类型private,用来控制对类的成员的存取,如果前面没有表明访问权限,默认访问权限为private;类外函数不能直接调用私有成员,只能通过成员函数调用。此外,私有成员定义是,只能声明不能初始化。
常变量:const 数据类型 符号常量名 = 数值;
符号常量:#define 符号常量名 数值
常量数据成员的初始化只能通过构造函数的成员初始化列表进行;
例:public:
const int Num;
Myclass(int=0) : Num(0) { }
友元函数:friend修饰的非成员函数,它不属于类,因此调用时不需要添加类名及作用域,并且可以访问任何成员;它的定义与声明要相呼应,即返回值,参数类型,参数个数,及有无const关键字。
构造函数:专门用于对象初始化的函数,它是与类名相同的,在建立对象时根据参数自动调用的函数。作为类的成员函数,构造函数可以直接访问类的所有数据成员,可以是内联函数,可以不带任何参数,可以带有参数以及默认形参值,还可以重载,用户可以根据不同问题的具体需要,有针对性地设计合适的构造函数将对象初始化为特定的状态。
构造函数的特性:*构造函数的名必须与定义它的类同名;
*构造函数没有返回值。如果在构造函数前加void,int,double等是错误的;
*构造函数被声明定义为公有函数;
*构造函数在建立时由系统自动调用;
析构函数:也译拆构函数,是在对象消失之前的瞬间自动调用的函数,形式:~构造函数();~为非运算符;
析构函数也是类的一个特殊的公有函数成员,其特点如下:
*析构函数没有任何参数,不能被重载,但可以是虚函数,一个类只有一个虚构函数;
*析构函数没有返回值;
*析构函数名与类名相同,但在类名前加上一个逻辑非运算符“~”,以示与构造函数对比区别;
*析构函数一般由用户自己定义,在对象消失时有系统自动调用,如果用户没有调用析构函数,系统将自动生成一个不做任何事的默认析构函数;
注意:在对象消失时清理工作并不是有析构函数完成,而是靠用户在析构函数中添加清理语句完成。
delete语句语法:delete[ ]+要释放的指针(指针变量名称);
函数重载:就是两个以上的函数,取相同的函数名,但是形参的个数和类型不同,编译器根据实参和形参的类型及个数的最佳匹配,自动决定调用哪一个函数。
类成员由数据成员和函数成员构成;函数成员又称成员函数,其格式为:返回值类型
类名 :: 成员函数名(形参表)
{
函数体;
}
其中,::是类的作用域分辨符,用在类名后成员函数前,表明后面的成员函数属于前面的那个类。
成员的存取权限(访问权限):存取控制属性:公有类型public,保护类型protected,私有类型private,用来控制对类的成员的存取,如果前面没有表明访问权限,默认访问权限为private;类外函数不能直接调用私有成员,只能通过成员函数调用。此外,私有成员定义是,只能声明不能初始化。
常变量:const 数据类型 符号常量名 = 数值;
符号常量:#define 符号常量名 数值
常量数据成员的初始化只能通过构造函数的成员初始化列表进行;
例:public:
const int Num;
Myclass(int=0) : Num(0) { }
友元函数:friend修饰的非成员函数,它不属于类,因此调用时不需要添加类名及作用域,并且可以访问任何成员;它的定义与声明要相呼应,即返回值,参数类型,参数个数,及有无const关键字。
相关文章推荐
- c语言中static作用
- C++中三种继承方式
- C语言巧妙运用位运算十进制转化为二进制输出
- 学习C++的50条忠告
- STL hash_map 底层初探
- C语言基础学习——第7天(二维数组、指针数组等)
- 关于为c++类中的变量赋值的问题
- 了解编译器默默生成哪些函数(Effective C++_5)
- C++ 笔记(二) —— 不要在构造和析构函数中调用虚函数
- C++入门经典 笔记 (第十四章)高级函数
- C++——friend
- 确定对象试用前已经初始化(Effective C++_4)
- C++中const的实现机制
- 浅谈C++多态
- an error occurred while creating opening the c++ browsing database 解决办法
- C++ #include .h extern 的相关关系及说明
- C语言
- C++语言的历史和标准化
- [Books]《C语言教程》笔记
- 设计模式c++(二)----Biluder建造者模式