Ошибка 1 ошибка C3867: «Command :: getSecondWord»: вызов функции отсутствует в списке аргументов; используйте '&', чтобы создать указатель на член

0

Я действительно близок к завершению моего проекта, но у меня возникает ошибка, которую я просто не могу оборачивать.

Это говорит мне использовать & sign для создания указателя на члена.

void Inventory::eat(string food){
//takes in the string stores it in temp string  call isitemin inventory to return an int
//use that int to return isEdible, int = 2 means your checking at pos 2
//if edible remove from inventory and add 2hp
string tempString = food;
int checker=isItemInventory(tempString);
bool edible = inventory[checker].getEdible;
if (!edible){
    cout << "you can't eat " + food << endl;
}
else//ended here for now

Таким образом, в основном у меня есть функция питания, которая принимает строку, она хранит строку в tempstring, а затем использует isItemInventory() для возврата числа. Это число говорит нам, где находится информация о "инвентаре", который предмет пытался попробовать. После того, как у нас есть это число, мы создаем локальное логическое значение и вызываем getEdible для элемента. это должно возвращать true или false, но вместо этого я получаю ошибку об использовании указателя? Может кто-нибудь мне помочь?

Теги:
pointers

1 ответ

2
Лучший ответ

Вы, вероятно, хотите:

bool edible = inventory[checker].getEdible();
                                       // ^^ parentheses are needed to call a function
  • 0
    и именно поэтому я должен делать перерывы каждые несколько часов: / спасибо, чувак!

Ещё вопросы

Сообщество Overcoder
Наверх
Меню