如何在不定义其他函数getValue()的情况下获取私有值?

时间:2019-01-26 11:24:40

标签: c++

我的功能有问题:analyserMain 它仅适用于analyserMain()的2个值,但是当我想使用“ table1”的值时(所以我只有m_flop1开始),因为m_flop1是private,所以我出错了!那么我是否被迫在Table类中声明一个函数:getValeur()?我已经在Carte类中创建了它,并且Table包含Cartes

谢谢

在Mains.cpp中:

void Mains::analyserMain(Table table1) const
{
// LES 2 CARTES EN MAINS (COMME FCT PRECEDENTE)
val1 = m_carte1.getValeur();
coul1 = m_carte1.getCouleur();
val2 = m_carte2.getValeur();
coul2 = m_carte2.getCouleur();  

//+ LES 3 CARTES SUR LA TABLE
val3 = table1.m_flop1.getValeur();
}

1 个答案:

答案 0 :(得分:0)

您不能访问其他班级的私人成员(除非它是该班级的朋友)。您可以选择声明一个getter函数或将成员的可访问性更改为公共(或视情况而定)。

在这里您可以找到有关C ++中可访问性的详细信息:

https://www.ibm.com/support/knowledgecenter/en/SSLTBW_2.2.0/com.ibm.zos.v2r2.cbclx01/cplr040.htm