C++ 学习(1):类与对象

1. 需要注意的是,私有的成员和受保护的成员不能使用直接成员访问运算符 (.) 来直接访问。

2. 范围解析运算符:

:: 叫作用域区分符,指明一个函数属于哪个类或一个数据属于哪个类。
:: 可以不跟类名,表示全局数据或全局函数(即非成员函数)。

作用域符号::的前面一般是类名称,后面一般是该类的成员名称,C++为例避免不同的类有名称相同的成员而采用作用域的方式进行区分

如:A,B表示两个类,在A,B中都有成员member。那么
      A::member就表示类A中的成员member

      B::member就表示类B中的成员member 

用于类外部定义函数。比如声明了一个类Box,类Box里声明了一个成员函数setLength(),但没有在类的声明里给出setLength的定义,那么在类外定义f时,就要写成void Box::setLength(),表示这个setLength()函数是类Box的成员函数

全局作用域符号:当全局变量在局部函数中与其中某个变量重名,那么就可以用::来区分如:

char    zhou;    //全局变量

void    sleep(){

      char    zhou;    //局部变量

      char(局部变量) = char(局部变量) *char(局部变量) ;  

      ::char(全局变量) =::char(全局变量) *char(局部变量); 


3. 继承类

class derived-class: access-specifier base-class

前面的是新类,后面的才是基类,也就是 子类:权限 父类的形式。

  • 公有继承(public):当一个类派生自公有基类时,基类的公有成员也是派生类的公有成员,基类的保护成员也是派生类的保护成员,基类的私有成员不能直接被派生类访问,但是可以通过调用基类的公有保护成员来访问。
  • 保护继承(protected): 当一个类派生自保护基类时,基类的公有保护成员将成为派生类的保护成员。
  • 私有继承(private):当一个类派生自私有基类时,基类的公有保护成员将成为派生类的私有成员。

class Rectangle: public Shape


派生类(多继承):

class <派生类名>:<继承方式1><基类名1>,<继承方式2><基类名2>,…
{
<派生类类体>

};


4. 虚函数与多态:

在父类中声明一个函数,子类中也声明了该函数名后,如果在子类调用该函数则会调用的父类的结果,因此如果要实现多态,需要先用virtual 关键字声明函数:

virtual ReturnType FunctionName(Parameter)

也有一个类似于Java中接口概念的纯虚函数,即不给出任何定义留到子类中,

virtual void funtion1()=0;

包含纯虚函数的类即为抽象类。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值