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;
}
相关推荐
Tony Bai4 小时前
“我曾想付钱给 Google 去工作”—— Russ Cox 深度访谈:Go 的诞生、演进与未来
开发语言·后端·golang
45288655上山打老虎4 小时前
C++完美转发
java·jvm·c++
SunkingYang6 小时前
程序崩溃闪退——MFC共享内存多次OpenFileMapping和MapViewOfFile而没有相应的UnmapViewOfFile和CloseHandle
c++·mfc·共享内存·崩溃·闪退·close·openfilemapping
问君能有几多愁~6 小时前
C++ 日志实现
java·前端·c++
JANGHIGH6 小时前
c++ 多线程(二)
开发语言·c++
海上彼尚6 小时前
Go之路 - 6.go的指针
开发语言·后端·golang
珑墨7 小时前
【浏览器】页面加载原理详解
前端·javascript·c++·node.js·edge浏览器
a伊雪8 小时前
c++ 引用参数
c++·算法
应茶茶8 小时前
从 C 到 C++:详解不定参数的两种实现方式(va_args 与参数包)
c语言·开发语言·c++
code bean9 小时前
【C++】Scoop 包管理器与 MinGW 工具链详解
开发语言·c++