C++ new后跟class

Ken*_*nji 1 c++ syntax class semantics

我和朋友正在研究一个古老的C++代码库.在此代码中,CDelayEvent指针数组定义如下

class CDelayEvent* m_pDelayEventList[DEF_MAXDELAYEVENTS];
Run Code Online (Sandbox Code Playgroud)

其中的各种对象按以下方式分配

m_pDelayEventList[i] = new class CDelayEvent;
Run Code Online (Sandbox Code Playgroud)

我的问题是class在两行中使用关键字.代码使用和不使用它来编译两行.

  1. 这是有效的C++吗?它编译,但我们以前从未见过这个.
  2. 什么是class关键词在这种情况下怎么办?
  3. 每隔一段时间删除它是否安全/更好?它会改变什么吗?

我找不到任何关于这个问题的信息,因为搜索"新课程"只能找到无关的文章和问题.

Som*_*ude 5

你知道C吗?然后你知道如何使用结构?并且struct在例如声明结构的变量时需要使用关键字?

在C++中,结构和类实际上是相同的,并且C++使得structclass关键字的需求是可选的,因此结构或类可以用作类型.

所以在你的情况下,你可以使用class CDelayEvent或只是CDelayEvent,它们在语义上是相同的.