C++定义一个简单的数据类型——类(二)

1.新的访问控制符

除了public和private以外,还有一种访问控制符,就是protected。protected介于public和private中间。public:派生类,类内,类外,友元均可访问。private:类内,继承private,友元可访问,其余不可。protected:类内,派生类(无论继承的是什么,只要继承该类),友元可访问。例子:

class A{
 private:
  int a;
 protected:
  int b;
 public:
  int c;
};
class B:public A{
 public:
  int d;
};//B成员可访问b,c
class C:private A{//private可写可不写(默认)
 public:
  int e;
};//C成员可访问a,b,c

2.this 指针

this指针是类内的一个隐式(也可使用)指针。所以,你可以返回它。如:

#include<iostream>
using namespace std;
class A{
 public:
  A& where(char);
  char b;
};
inline A::A& where(char a)
{
 //因为在类的作用域内,所以无需用 .来访问。
 b=a;
 return *this;//返回this
}; 

3.静态成员

静态成员不属于任何其他成员。此外,静态成员还可以是不完全类型。如:

class A{
 public:
  //...
 private:
 static A type;
 A *you;
 A error;//错误:数据成员必须为完全类型
};
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值