首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >C++:初始化还是分配?

C++:初始化还是分配?
EN

Stack Overflow用户
提问于 2020-06-02 20:25:50
回答 2查看 1.3K关注 0票数 6

我在读“Stroustrups”C++第四版。第153页,有关于初始化和分配的问题。据我理解,初始化发生在构造函数中,赋值在operator=重载函数中。这是正确的吗?

而且,我不记得在他1998年第三版中看到过括号,即int count {1}。书。我应该使用int count {1}int count = 1来定义像计数器这样的变量吗?如果使用括号,似乎与C有一个尴尬的区别。

谢谢你的指导

代码语言:javascript
复制
void f() {
   int count {1}; // initialize count to 1
   const char∗ name {"Bjarne"}; // name is a    variable that points to a constant (§7.5) 
   count = 2; // assign 2 to count
   name = "Marian";
}
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2020-06-02 20:28:40

花括号是的一部分,它是与C++11标准一起添加的。

使用

代码语言:javascript
复制
int value {1};

等于

代码语言:javascript
复制
int value = 1;

在初始化变量时使用大括号和“赋值”语法有一些不同,但在这种简单的情况下,它们是相等的。

票数 8
EN

Stack Overflow用户

发布于 2020-06-02 20:49:08

初始化意味着您第一次写入变量并给它一个初始值,如int x=5;但是赋值意味着您已经有了一个变量,并且您更改了它的值,就像您稍后来设置x=10时一样;现在您在变量x上赋值为10。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/62160838

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档