Среди прочих проблем вы #define firealarm
находитесь в верхней части firealarm.h
, что означает, что каждый раз, когда слово firealarm
появляется позже в файле, оно будет полностью удалено. Итак, для компилятора ваш файл выглядит так:
class {
public:
();
// ..... more code
Это недопустимый C ++, поэтому компилятор выдает ошибку. Позже в файле появятся другие ошибки, например, объявление функции gas_values
, которая не имеет возвращаемого типа и не имеет точки с запятой в конце строки.
Переименуйте ваш включаемый охранник (строки #ifdef
и #define
) в слово, которое вы не используете, например __firealarm_h_included
, или замените их (и строку #endif
) одной #pragma once