c++ - 与 "ctime"类库相关

标签 c++

tm time_info= tm();

这里c++语句中的time_infotm类的对象,tm()也是tm()的对象 类。

两者都会调用构造函数,那么time_info=tm()需要什么?

最佳答案

tm time_info= tm();

tm 是结构名称,即您正在定义 的名为 time_info 的单个对象的类型在这一行。 tm() 是对名为 time_info 的对象的类 tm 的构造函数的调用——它就在那里以确保对象已正确初始化。

... tm() also denotes the object of tm() class.

tm() 不表示任何对象tm() 不是一个类

The constructor will be called for both of them, ...

不,构造函数将被调用一次,并将初始化对象time_info。这就是 C++ 语法的定义方式:这一行中没有实际的赋值/复制(这是一种称为复制省略的语言特性),事实上,如前所述,没有两个实例开始,只有一个。

关于c++ - 与 "ctime"类库相关,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51833608/

相关文章:

c++ - Linux C++ 编译器(和链接器)如何决定将类型信息放在哪里?

c++ - 使用 C++ 将 char 数组转换为 int

c++ - 如何在二叉搜索树节点中找到次要元素的平均值

C++:类如何将自身加载到内存中以增加全局变量?

c++ - 给出不精确答案的递归Karatsuba算法

c++ - 在对象中传递函数和运算符调用

c++ - 如何制作一个带有关闭按钮且窗口左上角没有图标/菜单的窗口?

c++ - 如何在多个文件中使用变量?

c++ - 为什么删除移动构造函数时我的对象没有被复制?

c++ - 如何从 LPWSTR 转换为 'const char*'