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

C++初始化内置类型变量的方式(至少6种)

在C++中,至少存在6种初始化形式,其中不带“=”号的初始化只能用于初始化,不能用于赋值,例如:

    int a{ 1 };

    int b(1);

    int c = {1};

    int d = int(1);

    int e = 1;

    int f = (1);

以上6种初始化本质上都是一样的:

    int a{ 1 };

00007FF73ABE2DBD  mov         dword ptr [a],1 

    int b(1);

00007FF73ABE2DC5  mov         dword ptr [b],1 

    int c = {1};

00007FF73ABE2DCD  mov         dword ptr [c],1 

    int d = int(1);

00007FF73ABE2DD5  mov         dword ptr [d],1 

    int e = 1;

00007FF73ABE2DDD  mov         dword ptr [e],1 

    int f = (1);

00007FF73ABE2DE5  mov         dword ptr [f],1 

)

但推荐使用{}的方式,这种方式是安全的,不进行隐匿转换,例如:

int m{1.2}; //编译时会提示错误


http://www.mrgr.cn/news/49231.html

相关文章:

  • 在 Ubuntu 中使用 Gitee(码云)创建仓库、上传代码和下载
  • 进程 vs 线程:你需要知道的关键区别
  • Linux Ubuntu dbus CAPI ---- #include<dbus.h>出现“无法打开源文件dbus/xxx.h“的问题
  • 弘景光电IPO:多赛道布局展现稳健经营与可持续增长
  • github.com port 443 问题
  • Android Studio开发Kotlin项目中遇到的问题解决集
  • 软件供应链十年:探索开源的增长、风险和未来
  • 【风力发电】基于模糊逻辑控制的风电系统MPPT
  • vue开发环境、生产环境配置与nginx配置后端代理转发跨域
  • SRAM和DRAM在性能指标上具体有哪些差异
  • 基于STM32的智能电能表设计
  • C++ STL 六大组件
  • STM32 | MQTT+esp8266(第十四天)
  • 尚硅谷rabbitmq2024介绍和工作模式 第4-9节 答疑
  • 【云原生】Helm资源清单管理工具
  • 南邮-软件安全--第一次实验报告-非爆破计算校验值
  • 2024最新网络安全自学路线,内容涵盖3-5年技能提升
  • LeetCode 每日一题 2024/10/7-2024/10/13
  • AWD入门
  • Redis 集群入门指南