Typedefs inside a class

Typedefs inside a class

本文关键字:class inside Typedefs      更新时间:2023-10-16

假设我有一个带有昂贵构造函数的类,假设我不需要创建构造函数,因为它"很简单"。在课堂里,我想放一个typedef。总之,它看起来像:

class Expensive {
public:
    typedef double data_type;
    data_type data[100000][100000];
};

现在,在我的呼叫代码中,如果我这样做:

Expensive::data_type singleValue;

这会创建一个Expensive的临时实例,并为数据分配所有空间来访问typedef吗?

简单地说:不。该操作在运行时没有任何效果。即使只是声明一个double也不能保证在运行时产生任何效果,因为您没有使用它;)

否;您访问的实际上是类的静态成员。没有创建任何实例,因此也没有创建巨大的数组。