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

UE学习日志#17 C++笔记#3 基础复习3

19.2 [[maybe_unused]]

禁止编译器在未使用某些内容时发出警告

19.3 [[noreturn]]

永远不会把控制权返回给调用点

19.4 [[deprecated]]

        标记为已弃用,仍然可以使用但是不鼓励使用

        可以加参数表示弃用的原因[[deprecated("")]]

19.5 [[likely]]和[[unlikely]]

        这些表示可能性的属性可用来帮助编译器优化代码

20 C风格的数组和std::array

C风格数组的几种初始化

int myArray[3] = {0};//全0
int myArray[3]={};//全0
int myArray[3]{};//全0

int myArray[]{1,2,3};//大小为3,内容1、2、3
int myArray[3]={2};//第一个为2,其他都为0

std::array

array<int,3> arr{1,2,3};
array arr {1,2,3};

这两种都是大小固定的

21 std::vector 

大小不固定

简单用法:

vector<int> myVector {1,2};
myVector.push_back{3};

22 std::pair

pair <double,int> myPair {1.23,4};
//first second访问

这篇还没完,明天会继续补一点

(补)

23 std::optional

C++三剑客之std::optional(一) : 使用详解_c++ optional-CSDN博客

24 结构化绑定

//example1
array values {11,22,33};

auto [x,y,z] {values};

//example2

struct Point {double x,y,z};
Point point;
point.x=1;point.y=2;point.z=3;
auto [x,y,z]{point};

//example3

pair myPair{"hello",5};
auto [theString,theInt]{myPair};

25 基于范围的for循环的初始化器

for(<initializer>;<for-range-declaration>:<for-range-initializer>){<body>}

示例: 

for(array arr {1,2,3,4};int i : arr){cout<<i<<endl;}

26 初始化列表

<initializer_list>中定义

示例:

int makeSum(initializer_list<int> values){

    int total {0};
    for(int value:values){
        total+=value;
    }
    return total; 
}

int a{makeSum({1,2,3})};


http://www.kler.cn/a/527970.html

相关文章:

  • Day24-【13003】短文,数据结构与算法开篇,什么是数据元素?数据结构有哪些类型?什么是抽象类型?
  • Spring RESTful API 设计与实现
  • 学习串行通信
  • 使用where子句筛选记录
  • P1044 [NOIP2003 普及组] 栈 C语言
  • 消息队列篇--通信协议篇--TCP和UDP(3次握手和4次挥手,与Socket和webSocket的概念区别等)
  • mysql 数据去重技术——全球数据备份—未来之窗跨平台操作
  • Java手写简单Merkle树
  • 【Java异步编程】基于任务类型创建不同的线程池
  • Python-基于mediapipe,pyautogui,cv2和numpy的电脑手势截屏工具(进阶版)
  • 【Rust】18.2. 可辩驳性:模式是否会无法匹配
  • Python 梯度下降法(五):Adam Optimize
  • Java动态代理:原理与实现
  • 家庭财务管理系统的设计与实现
  • Spring的设计理念之IOC
  • 软件渲染器tinyrenderer
  • OpenCV:SIFT关键点检测与描述子计算
  • caddy2配置http_basic用于验证用户名密码才允许访问页面
  • 代码随想录|动态规划1143.最长公共子序列 1035.不相交的线 53. 最大子序和 392.判断子序列
  • 零代码搭建个人博客—Zblog结合内网穿透发布公网
  • 2025 年,链上固定收益领域迈向新时代
  • I.MX6ULL 中断介绍上
  • 推荐一款好看的Typora主题页面
  • MATLAB R2023b下载与安装教程
  • MongoDb user自定义 role 添加 action(collStats, EstimateDocumentCount)
  • 【MATLAB例程】TOA和AOA混合的高精度定位程序,适用于三维、N锚点的情况