C++ での合成について教えてください。User.h を含むクラス User があります。
class User
{
public:
std::string getName();
void changeName(std::string nName);
std::string getGroup();
void changeGroup(std::string nGroup);
User(std::string nName, std::string nGroup);
~User(void);
private:
std::string name;
std::string group;
};
ここで、Honeypot クラスで次のように定義します。
ハニーポット.h:
class Honeypot
{
public:
User us;
私はコンストラクタを持っています:
Honeypot (std::string name, std::string ip, int numberOfInterfaces, std::string os);
Honeypot.cpp で:
Honeypot::Honeypot(std::string name, std::string ip, int numberOfInterfaces, std::string os):us(nName, nGroup){
this->name = name;
this->ip = ip;
this-> numberOfInterfaces = numberOfInterfaces;
this->os = os;
}
しかし、この構文は正しくありません。エラーは次のとおりです。
IntelliSense: expected a ')', 'nGroup' : undeclared identifier and more on line :us(nName, nGroup){...
ご協力ありがとう御座います。