C++ using的多种用法

1、引入命名空间

cpp 复制代码
using namespace std;
using std::cout;

2、引入基类成员

cpp 复制代码
class Base{
public:
	void func(){cout << "Base::func()" << endl;}
};
class Derived : public Base{
public:
	using Base::func;
	void func(int x){
		cout << "Derived::func(x)" << x << endl;
	}
};
int main(){
	Derived d;
	d.func();	//Base::func()
	d.func(1);	//Derived::func(x)
	return 0;
}

3、取别名

cpp 复制代码
//给类型取别名
using type = int;
type x = 10;

//给FormatItem类型的智能指针取名为ptr
using ptr = shared_ptr<FormatItem>;

template<class T>
class A{
public:
	//给模板类型取别名
	using value_type = T;
	//T func(){}
	value_type func(){}
private:
	//T x;
	value_type x;
}
相关推荐
ttwuai2 小时前
Go 后台富文本图片上传失败排查:前端限制、接口和存储目录要一起看
前端·golang·状态模式
小肝一下3 小时前
2. 顺序表和链表
c语言·数据结构·c++·链表·dijkstra·依蕾娜·香香的依蕾娜
Wang's Blog3 小时前
Go-Zero基础入门1: 微服务框架与选型分析
开发语言·微服务·golang
王老师青少年编程3 小时前
csp信奥赛C++高频考点专项训练:【二分答案】案例5:进击的奶牛
c++·二分答案·csp·高频考点·信奥赛·进击的奶牛
旖-旎15 小时前
《LeetCode647 回文子串 || LeetCode 5 最长回文子串》
c++·算法·leetcode·动态规划·哈希算法
Darkwanderor16 小时前
对Linux的进程控制的研究
linux·运维·c++
云泽80816 小时前
从零吃透 C++ 异常:抛出捕获、栈展开、异常重抛与编码规范详解
开发语言·c++·代码规范
灯澜忆梦16 小时前
GO---可见性规则
开发语言·golang
REDcker17 小时前
libdatachannel 快速入门
c++·webrtc·datachannel
second6018 小时前
第一部分:快速上手 —— 建立 C++ 基本语法与编程范式
开发语言·c++