今天看啥  ›  专栏  ›  everystep

初始化代码写到崩溃?这个 C++ 魔法必须安排上!

everystep  · 公众号  ·  · 2024-11-25 07:00
    

文章预览

大家好啊! 👋 我是 everystep ,今天让我们来聊聊 C++ 中的聚合初始化这个有趣的话题。不过在开始之前,让我们先来听听这个魔法特性的小故事~ 🎬 很久很久以前(其实也就是 C++98 的年代啦 😉),程序员们在初始化变量时可是遇到了不少烦恼呢。那时候的初始化就像是一场混乱的舞会 🎭,大家都在用着不同的方式跳舞:有人喜欢用圆括号(),有人偏爱等号=,还有人钟情于花括号{}。这可让代码世界乱成一锅粥啦! 🥘 直到有一天,C++11 的标准委员会决定要给这场舞会定下新规则。他们说:"让我们创造一个统一的初始化方式吧!" 于是,聚合初始化这个可爱的小精灵就诞生啦! 🧚‍♀️ 它不仅统一了初始化的语法,还带来了很多意想不到的惊喜呢~ 比如说,它可以防止类型收窄(narrowing),就像是给我们的数据穿上了一件防护服 🛡️。如果你试图把一个 double 偷偷塞进 int ………………………………

原文地址:访问原文地址
快照地址: 访问文章快照
总结与预览地址:访问总结与预览