Я новичок в C ++, и скажем, у меня есть два класса: Creature
и Human
:
/* creature.h */
class Creature {
private:
public:
struct emotion {
/* All emotions are percentages */
char joy;
char trust;
char fear;
char surprise;
char sadness;
char disgust;
char anger;
char anticipation;
char love;
};
};
/* human.h */
class Human : Creature {
};
И у меня это есть в моей основной функции в main.cpp
:
Human foo;
Мой вопрос: как мне настроить эмоции foo? Я попробовал это:
foo->emotion.fear = 5;
Но GCC выдает мне эту ошибку компиляции:
ошибка: базовый операнд '->' имеет тип без указателя 'Human'
Это:
foo.emotion.fear = 5;
Дает:
ошибка: 'struct Creature :: emotion' недоступна
ошибка: в этом контексте
ошибка: неверное использование 'struct Creature :: emotion'
Кто-нибудь может мне помочь? Спасибо
P.S. Нет, я не забыл #include
с