#include "cs163hw1.h"
extras::extras(int num_cats){
head = new category_node;
head->next = NULL;
head->category = num_cats;
category_node * temp;
for(int i = 1; i < (num_cats); ++i){
temp = new category_node;
temp->next = head;
head = temp;
head->category = (num_cats-i);
}
}
extras::~extras(){
category_node * temp;
while(head->next){
temp = head;
head = head->next;
delete temp;
}
delete head;
}
extras::int print_cats(){
category_node * current;
while(current){
cout << current->category << endl;
current = current->next;
}
return 1;
}
Я получаю неопознанную ошибку идентификатора в int перед print_cats. Прошло немного времени с тех пор, как я использовал c ++, но я думаю, что помню, что отсутствие «;» ошибка, но для жизни я не нашел это.
Не уверен, но так и должно бытьint extras::print_cats()
вместо
int extras :: print_cats ()
Если это метод.
Это будет работать int extras::print_cats()
, Просто небольшая синтаксическая ошибка.
Вы, вероятно, не имели в виду extras::int
, скорее int
, Единственный способ, который мог бы иметь смысл, был бы, если бы у вас был typedef, называемый int, в пространстве имен или классе (и это было бы плохой идеей).