C ++实例化

时间:2017-04-16 15:53:18

标签: c++ instance

我希望在另一个类中拥有一个类的实例。如果我在主程序中创建对象,一切都很好。如果我删除第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);
}

1 个答案:

答案 0 :(得分:2)

类内初始值设定项必须使用={}初始化语法:

class delay2 {
  // ...
  delay1 DTT{"DELAY1", 6};
};