1. 使用命名空间
- 使用整个std命名空间。
using namespace std;
- 只使用std命名空间中的cout。
using std::cout;
2. 类型别名
- C++ 11中用来代替typedef。
//c++ 98
typedef vector<int> NumVec;
//c++ 11
using NumVec = vector<int>;
- 最大的好处是可以使用模板,而在typedef中想实现需要通过类模板包裹起来,比较麻烦。
//使用模板
<template T>
using MyVec = vector<T>;
//使用
MyVec<char> myVec;
3. 修改继承的成员权限
- 可以修改继承自基类中成员变量或函数的访问权限,比如继承的一个变量应该是共有的,想改成私有。
//基类 BaseClass
public:
int num;
int ShowNum();
//----------------------------------------------------
//子类中 public 继承
//本来是在public中,但改到了private中
private:
using BaseClass::num;
using BaseClass::ShowNum;//只是引用,不需要指定参数
参考:
博客:C++ using的使用; 作者:私房菜