当前位置: 首页 > ds >正文

【C++】C++14新特性

C++14新特性

  • 泛型Lambda表达式
  • 二进制面量
  • 返回类型推断(Return Type Deduction)
  • 标准库增强
    • std::make_unique
    • std::exchange

泛型Lambda表达式

基本语法

[capture](parameters) -> return_type {// 函数体
}
  • capture:捕获外部变量(值或引用)
  • parameters:参数列表
  • -> return_type:返回类型(可省略,由编译器自动推导)
  • {}:函数体

实例 : 【C++】C++11新特性(lambda表达式)
在这里插入图片描述

二进制面量

在 C++14 中,标准引入了对 二进制字面量(Binary Literals) 的支持,允许你直接使用 二进制形式 来表示整数常量。
基本语法 :0b(0B)数字;

特性支持情况
前缀0b 或 0B
数据类型整型(如 int, long, long long)
分隔符(可读性)C++14 支持 ’ 分隔符,例如:0b1100’1100
后缀可以加后缀如 u(无符号)、l(长整型)、ll 等

实例:
在这里插入图片描述

返回类型推断(Return Type Deduction)

使用auto作为返回类型:在C++14中,你可以使用auto作为函数的返回类型,让编译器根据返回语句中的表达式自动推断出函数的实际返回类型。

在这里插入图片描述
注意:多个return返回类型要一致。
在这里插入图片描述
虚函数不能使用auto作为返回类型
在这里插入图片描述

标准库增强

std::make_unique

  • C++11 只有 make_shared,C++14 补充了 make_unique。
  • 更安全、更简洁地创建 unique_ptr。
auto ptr = std::make_unique<int>(42);  // 推荐用法std::unique_ptr<int> ptr(new int(42));  // C++11 及以前std::cout << *ptr << std::endl; // 输出 42

std::exchange

  • 将一个变量设置为新值,并返回旧值。
  • 避免重复写临时变量。
int old_value = std::exchange(var, new_value);
// 等价于:
// int old_value = var;
// var = new_value;
http://www.xdnf.cn/news/19723.html

相关文章:

  • Jenkins大总结 20250901
  • Abaqus后处理常见问题汇总
  • python生成器与协程深度剖析
  • 腾讯位置商业授权微信小程序获取城市列表
  • 数据分析编程第八步:文本处理
  • flex布局order改变排列顺序
  • 前沿科技竞速:脑机接口、AI芯片与半导体生态上的新突破
  • Product Hunt 每日热榜 | 2025-08-31
  • 记录我的第一次挖洞
  • 蓝牙BLE modem调制里面phase manipulation什么意思
  • Proteus8 仿真教学全指南:从入门到实战的电子开发利器
  • 【数据可视化-103】蜜雪冰城门店分布大揭秘:2025年8月数据分析及可视化
  • Dify之插件开发之Crawl4ai 爬虫打包与发布
  • SERL——针对真机高效采样的RL系统:基于图像观测和RLPD算法等,开启少量演示下的RL精密插拔之路(含插入基准FMB的详解)
  • 【STM32】中断软件分支处理( NVIC 和 GIC)
  • Rviz-Gazebo联动
  • C语言数据结构之双向链表
  • 详细介绍 JMeter 性能测试
  • Mac idea 格式化代码快捷键
  • 第 94 场周赛:叶子相似的树、模拟行走机器人、爱吃香蕉的珂珂、最长的斐波那契子序列的长度
  • 【C++】什么是智能指针及应用
  • 六大关键步骤:用MES系统重构生产计划管理闭环
  • 从能耗黑洞到精准智控:ASCB2智慧空开重构高校宿舍用电能效模型
  • 均值滤波和中值滤波的简介、C语言实现和实测
  • Adobe Photoshop 2025 最新下载安装教程,附PS2025下载
  • 【项目】多模态RAG必备神器—olmOCR重塑PDF文本提取格局
  • 智慧水利系统解决方案-水利信息化平台
  • linux连接服务器sftp无法输入中文
  • 直播预告 | Excelize 跨语言实战
  • 代码随想录二刷之“回溯”~GO