C++(类)
来源:互联网 发布:python 绝顶黑客 编辑:程序博客网 时间:2024/06/11 01:10
类
具有相同属性的一类事物,将不同类型的数据和与这些数据相关的操作封装在一起,类的实例是对象。
定义:
class 类名//类名一般采取首字母大写的格式,成员访问权限的声明出现顺序无要求。
{
public:(public成员)
private:(private成员)
protected:(protected成员)
};访问权限(类的默认访问权限为私有)
public(公有访问权限):提供类接口的功能,成员和程序中均可访问。
private(私有访问权限):被隐藏的数据,只有该类的成员或友元函数可以访问,
派生类和外部函数不能访问。
protected(保护):成员函数和派生类都可以访问,外部类外部函数不能访问。定义成员函数
①类体内定义
②类体外定义class Cdate{ void set(int a);};void Cdate::set(int a)//格式为 返回值类型 类名::函数名{函数体}{函数体}
调用成员函数
成员运算符调用:Cdate obj;
obj.set(1);
指针调用:Cdate *pobj;//pobj是指向obj的指针
pobj=&obj;
pobj->set(1);
引用调用:Cdate &a=obj;//a是对象obj的引用
a.set(1);重名问题
1、类型名隐藏了非类型名,如果要使用非类型名则在使用非类型名前加作用域运
算符::
int N;
class N{};
void fun()
{
class N a;//类N屏蔽了全局变量
::N=3;
}
2、非类型名隐藏了类型名,使用类型名时,在前加class
class Num{};
void fun(int Num)
{
class Num a;//类名前加class
Num++;//形参自增
}类与结构体的区别
1、结构体默认访问权限为public,类默认private。
2、结构体通过特定语法格式初始化,类通过构造函数和析构函数初始化。
- c++class(类)
- 抽象类(C++)
- string类(c++)
- C++(类)
- 【c/c++】复数类
- 【c/c++】类模板
- [C/C++] 类
- 【C/C++】嵌套类
- 【C/C++】模板类
- 内存整理(C/C++)
- (C/C++)
- 内存整理(C/C++)
- 密码学(C/C++)
- C&C++)试题
- utilities(C/C++)
- c/c++(二)
- 结构体和类的区别(C/C++)
- IIS管理类(C#)
- scala 随笔(7)unapply 解析
- 我喜欢培根:
- hdu 2586
- Java:按值传递还是按引用传递
- Hbuilder less自动编译
- C++(类)
- 强类型语言与弱类型语言
- 食物链(POJ-1182)
- LeetCode 409 Longest Palindrome
- (十二)Redux:进阶(存储本地state)
- 【平面图判定+2-SAT验证】BZOJ1997 [Hnoi2010]Planar
- 2017.7.30 日记 省赛总结
- K近邻法之kd树及其Python实现
- 第一天