微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

在c中隐式构造的变量

我正在掌握c,并且有一种语言功能我遇到了困扰我的头脑.

我习惯于明确声明和初始化一个变量,但在c中,我们有时似乎声明并隐式地构造一个变量.

例如在这代码片段中,rdev似乎是隐式构造的(因为它随后用于构造一个default_random_engine);

random_device rdev;
default_random_engine gen(rdev());

有人可以解释这里发生了什么吗?除了简单的声明,如int myInt; ?

解决方法

Can someone explain what’s going on here? How can I tell this apart
from a simple declaration such as int myInt;

它们都是简单的定义.

唯一的区别是类型的属性. random_device需要构建,所以它是. int,但是人们哭得太多了,所以不是.坦白说,int的行为更像是一个你所想要的语言缺陷.

最终,这是类型而不是定义的属性.

原文地址:https://www.jb51.cc/c/111863.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐