C++ 学习系列 -- using关键字

一 概述

c++ 11 中新引入了关键字 using

二 using 关键字的用处

1. using namespace 与 using namespace member

cpp 复制代码
#include<vector>
#include<list>

int main()
{
   using namespace std;
   vector<int>  vec = {1, 2, 3};

   using std::list;
   list<int>  li = {1, 2, 3};
   
   return 0;
}

2. alias type 与 alias template

cpp 复制代码
#include<vector>

// alias template
template<typename T>
using my_vector = std::vector<T, std::allocator<T>>;

int main()
{
   // 重命名函数指针类型,函数入参有两个,均是 int 类型,返回值是 void 类型
    // 此时 using 用法等同于 typedef
    typedef void(*func1)(int, int);
    using  func2 = void(*)(int, int);

   typedef  std::string  my_string1; // 用 my_string1 代表 std::string 类型
   using   my_string2 = std::string; // 用 my_string2 代表 std::string 类型

   my_vector<int> vec = {1, 2, 3};

   return 0;
}
相关推荐
不光头强1 分钟前
shiro学习要点
java·学习·spring
lly2024062 分钟前
网站主机提供商:如何选择最适合您的服务
开发语言
HAPPY酷2 分钟前
构建即自由:一份为创造者设计的 Windows C++ 自动化构建指南
开发语言·c++·ide·windows·python·策略模式·visual studio
工一木子3 分钟前
Java 的前世今生:从 Oak 到现代企业级语言
java·开发语言
xiaoye-duck4 分钟前
C++ string 底层原理深度解析 + 模拟实现(上)——面试 / 开发都适用
c++·面试·stl
啟明起鸣5 分钟前
【C++20新特性】概念约束特性与 “模板线程池”,概念约束是为了 “把握未知对象”
开发语言·c++·c++20·模板线程池
●VON12 分钟前
React Native for OpenHarmony:ScrollView 事件流、布局行为与性能优化深度剖析
学习·react native·react.js·性能优化·openharmony
老蒋每日coding20 分钟前
LangGraph:从入门到Multi-Agent超级智能体系统进阶开发
开发语言·python
你好!蒋韦杰-(烟雨平生)26 分钟前
OpenGL
c++·数学·游戏·3d
郁闷的网纹蟒29 分钟前
虚幻5---第12部分---蒙太奇
开发语言·c++·ue5·游戏引擎·虚幻