C++ instanciation

C++ instanciation

本文关键字:instanciation C++      更新时间:2023-10-16

我想在另一个类中拥有一个类的实例。如果我在主程序中创建对象,则一切都很好。如果我在第13行前面删除评论,我会收到消息

g++ MyMWE.cpp 
MyMWE.cpp:13:14: error: expected identifier before string constant
   delay1 DTT("DELAY1", 6);
              ^

如果我在主要程序或班级中实现,有什么区别?而且,编译器期望哪些标识符?我错了?

#include <string>
class delay1 {
public:
  delay1(std::string name, int t_){}
  int t;
};
class delay2 {
public:
  delay2(std::string name, int t_){}
  int t;
//  delay1 DTT("DELAY1", 6);
};
int main(int argc, char* argv[]) {
  delay1 DTT("DELAY1", 6);
  return(0);
}

上课初始化器必须使用 ={}初始化语法:

class delay2 {
  // ...
  delay1 DTT{"DELAY1", 6};
};
相关文章: