当我在下面的代码中调用getCount函数时,QT 4.7.3编译器会给出错误。构建错误
将'cont Person'作为'int Person :: getCount(const QString&)的'this'参数,丢弃限定符
bool Person::IsEligible(const QString& name)
{
int count = 0;
count = getCount(name);
}
int Person::getCount(const QString& name)
{
int k =0
return k;
}
答案 0 :(得分:3)
错误不是传递字符串参数的问题,而是你有一个const
人,例如:
const Person p1;
Person p2;
p1.IsEligible("whatever"); //Error
p2.IsEligible("whatever"); //Fine because p2 isn't const
如果IsEligible
可以在const Person
上调用,那么您可以说:
bool Person::IsEligible(const QString& name) const
{
int count = 0;
count = getCount(name);
}
(并改变你没有明显表现出来的相应声明),但我并不是百分之百确定你的目的是什么。