ZHXILIN'S BLOG
Home
Programming in C++
About
  • 服务端技术栈知识体系

    Dec 13, 2021 C++ Algorigthm Data Structure Operating System Networks Database Compilation Principle Distributed System Design Software Engineer Application Technology

    本人大学专业是软件工程(数字媒体技术),目前从事游戏服务端开发,在工作中也会经常面试候选人。结合大学计算机知识、工作经验和面试经历,本人总结了适合服务端开发的技术栈知识体系。

    本系列文章的特点是重点解析知识背后的原理,而不止是停留在使用层面。我认为知其然而不知其所以然是不可取的,我们要在学习实践的过程中搞懂每一个技术点背后的细节,才能称得上掌握了这项技术。本系列文章希望能帮助愿意在计算机编程领域挖掘背后原理的同学,同时也不断激励我继续深入学习。

    阅读本系列文章适合具备一定计算机编程基础的同学。

    Read More
  • C++17更多新特性

    May 31, 2022 C++

    C++17新增了不少新特性,重点部分我们在前几篇文章《C++17类模板参数推导》、《C++17结构化绑定》、《C++17 if-switch语句初始化》、《C++17折叠表达式》、《C++17 string_view》、《C++17 constexpr的改进》中都有介绍,剩下的新特性在这篇文章中集中介绍。

    Read More
  • C++17 constexpr的改进

    May 23, 2022 C++

    C++17的constexpr扩展了使用范畴,lambda表达式被纳入了constexpr的表达范畴,弥补了C++17之前无法使用constexpr lambda的遗憾,我们可以在只接受编译器常量的地方调用lambda表达式定义的lambda函数了。另外还提供了constexpr if语法的支持,可以在编译期进行逻辑判定,提供编译效率。本节内容通过回顾C++11和C++14标准定义的constexpr,然后展开介绍C++17对此的改进。

    Read More
  • C++17 string_view的原理

    May 17, 2022 C++

    字符串操作是我们日常开发过程中最常见的一环。在C++中,我们会经常结合C风格字符串(字符串字面值、字符数组、字符串指针)、std::string等方式来传递。而这些常见手段总会面临需要进行数据拷贝或者其他较为耗时的操作。C++17引入了std::string_view来解决这些问题,非常类似于Golang中的切片。本节内容就着重介绍std::string_view的原理。

    Read More
  • C++17折叠表达式

    May 11, 2022 C++

    C++11引入了可变参数模板(variadic template),它可以接收任意数量的模板参数,但是参数包不能直接展开,需要通过递归或者逗号表达式的方式进行展开,写法非常繁琐。C++17对这个问题进行了优化,引入了折叠表达式的概念,用来简化对可变参数模板中参数包的展开过程。本节内容重点介绍折叠表达式的使用方法。

    Read More
  • C++17 if/switch语句初始化

    May 11, 2022 C++

    C++17引入了if/switch语句初始化的新特性,既解决了变量命名问题,也可使声明变量的作用域缩小。这一新特性还可以作用于结构化绑定。本节内容主要介绍if/switch语句初始化的使用。

    Read More
  • C++17结构化绑定

    May 9, 2022 C++

    C++17提供了结构化绑定机制,可以使用指定名称绑定到初始化的子对象或元素上,与引用绑定别名类似,但结构化绑定的类型不需要是引用类型。得益于自动推导技术越来越成熟,通过auto声明的多个变量绑定到一个复杂结构成了可能。本节内容我们来介绍C++17的新特性——结构化绑定。

    Read More
  • C++17类模板参数推导

    May 7, 2022 C++

    在C++17之前,没有默认值的类模板参数总是需要显式将所有实参传递给类模板,而从C++17开始对于显示指定模板实参的限制已经取消。换言之,只要构造函数能推导出所有没有默认值的模板参数时,就可以省略模板实参的定义。本节内容将详细介绍C++17利用构造函数进行模板参数推导的过程。

    Read More
  • C++14更多新特性

    May 6, 2022 C++

    C++14其实新增的特性不算太多,都是一些对C++11的一些优化和补充。大部分的新特性在前几篇文章《C++auto关键字改进》、《C++14模板的改进》、《C++读写锁》、《C++14 exchange》中都有介绍,剩下的新特性在这篇文章中集中介绍。

    Read More
  • C++14 exchange

    May 6, 2022 C++

    C++14开始新增了std::exchange函数,基于移动语义对资源进行转移,省去了拷贝的消耗。新增的这个函数名表面上看起来是“交换”,但实际上并不是两者进行交换,而是将后者转移给前者,后者没有变化。本节内容介绍std::exchange和std::swap实现上的区别。

    Read More
    • ««
    • «
    • 1
    • 2
    • 3
    •  … 
    • 6
    • »
    • »»

zhxilin

Perfect World senior software engineer since 2014. Sun Yat-Sen University(SYSU) graduated student(2009-2013), major in Software Engineering. Interested in game server developing, dev-ops, algorithm and universal windows platform.
Read More

Featured Posts

  • 服务端技术栈知识体系
  • C++17更多新特性
  • C++17 constexpr的改进

Recent Posts

  • 服务端技术栈知识体系
  • C++17更多新特性
  • C++17 constexpr的改进
  • C++17 string_view的原理
  • C++17折叠表达式
  • C++17 if/switch语句初始化
  • C++17结构化绑定
  • C++17类模板参数推导

categories

TECHNOLOGY-STACK 47 服务端技术栈知识体系 47 TECHNOLOGY 5

tags

C++ 40 LINUX 4 ALGORIGTHM 2 APPLICATION-TECHNOLOGY 2 COMPILATION-PRINCIPLE 2 DATA-STRUCTURE 2 DATABASE 2 DISTRIBUTED-SYSTEM-DESIGN 2 NETWORKS 2 OPERATING-SYSTEM 2 SOFTWARE-ENGINEER 2 ALGORITHM 1 GITLAB 1 INDEX 1
All tags
ALGORIGTHM2 ALGORITHM1 APPLICATION-TECHNOLOGY2 C++40 COMPILATION-PRINCIPLE2 DATA-STRUCTURE2 DATABASE2 DISTRIBUTED-SYSTEM-DESIGN2 GITLAB1 INDEX1 LINUX4 MYSQL1 NETWORKS2 OPERATING-SYSTEM2 REDIS1 SOFTWARE-ENGINEER2 WEB-SEQURITY1 WSL21
[A~Z][0~9]

Copyright ©  ZHXILIN'S BLOG. All Rights Reserved. | Total View Times