我正在使用头文件“sales.item”
我正在写一个小程序,它告诉我头文件,而不是我的程序,有一个错误。不知怎的,最后一行不对。错误是说字符串isbn是私有的。
#include <iostream>
#include "Sales_item.h"
int main()
{
Sales_item item1, item2;
std::cin >> item1 >> item2;
if (item1.isbn() == item2.isbn()) { // this checks if item1 and item2 are same book
答案 0 :(得分:1)
在Sales_item
课程中,您忘记了isbn
方法public
,并将其保留为默认private
知名度。
简而言之,它应该是这样的:
class Sales_item
{
public:
return_value isbn();
}
如果没有public:
行,默认情况下它在C ++类中将为private
。
答案 1 :(得分:0)
我要走出困境,并猜测你的课程定义如下:
class Sales_item
{
std::string isbn;
}
类和结构体的成员数据具有公共,私有和受保护的标签,默认情况下,类的成员标记为私有。您应将其更改为:
class Sales_item
{
public:
std::string isbn;
}
编辑:
当您将()
(带或不带参数)添加到标识符时,您告诉编译器将其称为函数。取出(),你的代码应该可以工作。