![](/img/trans.png)
[英]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.