Да, int
должны быть там.Исходный пример кода недопустим (как уже упоминал кто-то, возможно, код изначально был C, а не C ++).Во-первых, для объявления класса нужна завершающая точка с запятой, чтобы иметь возможность компилирования.g ++ сообщает:
foo.cpp:3: note: (perhaps a semicolon is missing after the definition of ‘A’)
Добавляя точку с запятой, мы получаем:
class A {
int x;
int y;
public:
getSum1() const {
return getx() + y;
}
getSum2() const {
return y + getx();
}
getx() const {
return x;
}
};
Что все еще не удается.g ++ сообщит следующее:
foo.cpp:8: error: ISO C++ forbids declaration of ‘getSum1’ with no type
foo.cpp:12: error: ISO C++ forbids declaration of ‘getSum2’ with no type
foo.cpp:16: error: ISO C++ forbids declaration of ‘getx’ with no type