vazaz
|
||||||||||||||||
1 | ||||||||||||||||
Дейтел. Помощь в решении задач из книги11.08.2011, 14:38. Показов 4350. Ответов 5
Метки нет (Все метки)
Добрый день.
Начал изучение С++ по книге "Как программировать на С++" 5 издание. Установлена IDE Code::Blocks компилятор GCC. Не могу решить задачку 3.11. Где надо модифицировать класс GradeBook. Мое решение: GradeBook.h
||=== 3-11, Debug ===| \main.cpp||In function 'int main()':| \main.cpp|8|error: no matching function for call to 'GradeBook::GradeBook(const char [41], const char [6])'| \GradeBook.h|8|note: candidates are: GradeBook::GradeBook(std::string)| \GradeBook.h|6|note: GradeBook::GradeBook(const GradeBook&)| \main.cpp|9|error: no matching function for call to 'GradeBook::GradeBook(const char [26], const char [6])'| \GradeBook.h|8|note: candidates are: GradeBook::GradeBook(std::string)| \GradeBook.h|6|note: GradeBook::GradeBook(const GradeBook&)| ||=== Build finished: 6 errors, 0 warnings (0 minutes, 0 seconds) ===| Помогите найти ошибки, пожалуйста |
11.08.2011, 14:38 | |
Ответы с готовыми решениями:
5
Помощь в решении задач! Помощь в решении двух задач. Помощь в решении несложных задач Нужна ваша помощь в решении задач!! |
594 / 532 / 76
Регистрация: 22.03.2011
Сообщений: 1,585
|
|
11.08.2011, 14:43 | 2 |
конструктор с 2-мя параметрами создай
1
|
Уничтожитель печенек
281 / 209 / 49
Регистрация: 07.02.2010
Сообщений: 724
|
|
11.08.2011, 14:46 | 3 |
Так у вас в конструктор передается 2 значения
1
|
vazaz
|
||||||||||||||||
11.08.2011, 18:07 | 5 | |||||||||||||||
Спасибо большое, что подсказали, в каком направлении двигаться.
Все оказалось очень просто. я сделал так: Изменненная часть кода GradeBook.h ...
Изменненная часть кода GradeBook.срр
и все получилось! |
Заблокирован
|
||||||
11.08.2011, 18:23 | 6 | |||||
У такого определения конструктора есть ряд недостатков. Во-первых, вы передаете параметр string name по значению. А это означает, чтодля него запускаются конструкторы и деструкторы. Лучше было бы определить параметр как константная ссылка: const string &name. Тогда никаких конструкторов и деструкторов для name не вызывалось бы. Кроме того лучше ваши поля класса инициализировать в списке инициализации конструктора. Сейчас так, как вы сделали, приводит к тому, что сначала запускается конструктор для вашего поля string courseName, а затем для него вызывается оператор присваивания.
Я понимаю, что в книге последовательно дается материал, но, опережая события, я бы конструктор определил бы следующим образом
1
|
11.08.2011, 18:23 | |
11.08.2011, 18:23 | |
Помогаю со студенческими работами здесь
6
НУЖНА ПОМОЩЬ В РЕШЕНИИ НЕСКОЛЬКИХ ЗАДАЧ! Х. Дейтел помощь по книге Непонятный пример из книги Дейтел Задача из книги Дейтел Как программировать на C++ Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |