成员变量需要构造函数的参数 [英] Member variable needs parameters for constructor
本文介绍了成员变量需要构造函数的参数的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我正在尝试在我编写的类中包含一个成员变量,
I'm trying to include a member variable in the class I write,
MyClass.h
#include <SomeClass.h>
Class MyClass{
public:
MyClass(int par);
SomeClass B;
}
MyClass.cpp
MyClass.cpp
#include "MyClass.h"
#include "SomeClass.h"
MyClass::MyClass(int par){
B=SomeClass(par);
}
然而,SomeClass
为其构造函数接受变量,因此上面的代码产生没有匹配的函数来调用SomeClass::SomeClass()"
However SomeClass
takes variables for its constructor, so the above code yields no matching function for call to "SomeClass::SomeClass()"
我应该在这里做什么?
更新:似乎成员初始值设定项列表是要走的路,但是如果我想使用 SomeClass
对象的数组怎么办?所以 MyClass.h 变成了:
Update:
Seems like member initializer list is the way to go, but how if I want to use an array of SomeClass
objects? So MyClass.h becomes:
#include <SomeClass.h>
Class MyClass{
public:
MyClass(int par);
SomeClass B[2];
}
推荐答案
使用成员初始化列表
MyClass::MyClass(int par) : B(par)
{
}
这篇关于成员变量需要构造函数的参数的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文