如何解决错误引用“距离”不明确
我无法弄清楚为什么出现错误“ reference to 'distance' is ambiguous
”。
我已经将类对象作为参数传递给了朋友函数。
#include <iostream>
using namespace std;
class distance {
int meters = 0;
public:
distance() {}
void displaydata() {
cout << "Meters Value:" << meters;
}
//Prototype
friend void addvalue(distance &d);
};
void addvalue(distance &d) {
d.meters += 5;
}
int main() {
distance d1; // meters = 0
d1.displaydata(); // 0
// The friend function call
addvalue(d1); // pass by reference
d1.displaydata();
}
解决方法
如果删除using namespace std;
并将cout
更改为std::cout
,则代码将编译而不会出现错误。
发现歧义的来源留为an exercise to the reader
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。