构造函数和继承c ++

时间:2014-03-29 14:50:32

标签: c++ inheritance constructor

这是类TXTArgon的构造函数,它是Particule的子类。 “m_”是Particule类的一个属性。我需要指定默认值为m的TXTArgon par默认值为18.0。 我收到一个错误:“类'TXTArgon'没有任何名为'm_'的字段”。但是m_受到了保护......

TXTArgon::TXTArgon () 
: Particule(),
  m_(18.0),
  nom_("TXTAr")
{
}

有人看到我如何更正此代码?

1 个答案:

答案 0 :(得分:4)

您只能通过m_的构造函数初始化Particule。如果Particule没有合适的构造函数,那么您可以做的是在初始化之后更改其值

TXTArgon::TXTArgon () 
: Particule(),
  nom_("TXTAr")
{
  m_ = 18.0; // or m_ = TheTypeOfM_(18.0)
}