2016-09-07 7 views
0

У меня возникли некоторые проблемы воедино код, и моя задача сводится к следующему:перезапись данных членов с функцией члена C++

У меня есть класс с несколькими членами данных, которые я использую конструктор для установки.

Позже я хочу изменить некоторые из этих элементов данных, если вызывается определенная публичная функция-член.

, например:

class example 
{ 
    public: 
        int Test 
        void changeTest (int newTest) { Test = newTest;} 
} 

Я получаю неквалифицированный идентификатор ошибку относительно Теста внутри функции changeTest().

Является ли то, что я пытаюсь сделать не возможным, или я просто делаю это неправильно? Я не могу найти хороший ресурс в Интернете.

+3

Вам не хватает точек с запятой – mathematician1975

+1

Сначала, пожалуйста [прочитайте о том, как задать хорошие вопросы] (http://stackoverflow.com/help/how-to-ask), а затем узнайте, как создать [Минимальное, Полное и Подтверждаемый пример] (http://stackoverflow.com/help/mcve). Нам нужна MCVE и полная и неотредактированная ошибка в полном объеме, чтобы помочь вам. –

ответ

2
class example 
{ 
    public: 
     int Test //<-- Missing semicolon here, should be int Test; 
     void changeTest (int newTest) { Test = newTest;} 
} //<-- Missing semicolon here too. 

Вы пропускаете точку с запятой, так что вы получите безоговорочную ошибку идентификатора и неквалифицированный идентификатор Test. Большинство старых компиляторов дают странные ошибки, но многие современные из них говорят:

Error: expected a ';'

Кроме того, в конце вашего класса необходимо также точка с запятой, которые я упоминал выше.

+0

@JoachimPileborg отредактировал –