[英]How do we initialize a std::vector in a class constructor in C++?
[英]C++ - How do I initialize a constructor of a separate class from the constructor of a class?
基本上,我想实现的是创建类的地方(私人)实例deltaKinematics
在类geneticAlgorithm
在geneticAlgorithm.h
文件中,我有:
class DeltaKinematics; //class is defined in separate linked files
class GeneticAlgorithm {
//private
DeltaKinematics deltaRobot;
public:
GeneticAlgorithm(); //constructor
};
这很好,但是当我去声明GeneticAlgorithm
构造函数时,我无法弄清楚如何构造DeltaKinematics
的实例
这是geneticAlgorithm.cpp
构造函数:
GeneticAlgorithm::GeneticAlgorithm(){ //The error given on this line is "constructor for 'GeneticAlgorithm' must explicitly initialize the member 'deltaRobot' which does not have a default constructor"
DeltaKinematics deltaRobot(100); //this clearly isn't doing the trick
cout << "Genetic Algorithmic search class initiated \n";
}
如何初始化该本地实例?
成员初始化列表:
GeneticAlgorithm::GeneticAlgorithm() : deltaRobot(100) {
}
GeneticAlgorithm::GeneticAlgorithm() : deltaRobot(100) {
cout << "Genetic Algorithmic search class initiated \n";
}
注意:
在构造函数名称之后:它是类的成员数据变量的初始化序列的开始。 它们显示为对其构造函数的调用,具有您想要传递的参数,并且应该与它们声明的顺序相同。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.