|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
11.10.2011, 15:16 | #1 |
Новичок
Джуниор
Регистрация: 11.10.2011
Сообщений: 1
|
Не компилируется программа из книги Дейтела "Как программировать на с++"
Помогите, пожалуйста, решить проблему. Программа из раздела книги "Отделение интерфейса от реализации". При компиляции(использую visual c++ 2008) возникают ошибки:
1) error LNK2019: unresolved external symbol "public: class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > __thiscall GradeBook::getCourseName(void)" (?getCourseName@GradeBook@@QAE?AV?$ basic_string@DU?$char_traits@D@std@ @V?$allocator@D@2@@std@@XZ) referenced in function _main 2)error LNK2019: unresolved external symbol "public: __thiscall GradeBook::GradeBook(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >)" (??0GradeBook@@QAE@V?$basic_string@ DU?$char_traits@D@std@@V?$allocator @D@2@@std@@@Z) referenced in function _main Текст программы следующий: // файл GradeBook.h // определение класса GradeBook #include <string> using std::string; // Определение класса GradeBook class GradeBook { public: GradeBook(string); // конструктор инициализирующий courseName void setCourseName(string); // устанавливает courseName string getCourseName(); // получает название курса void displayMessage(); // выводит сообщение приветствия private: string courseName; // название курса для данного GradeBook }; // файл gradebook.cpp // Определение элемент-функций класса GradeBook #include <iostream> using namespace std; #include "GradeBook.h" GradeBook::GradeBook(string name) // конструктор инициализирует courseName переданной строкой { setCourseName(name); // инициализировать вызовом set-функции } void GradeBook::setCourseName(string name) // функция для установки названия курса { courseName = name; } string GradeBook::getCourseName() // функция для получения названия курса { return courseName; } void GradeBook::displayMessage() // вывести сообщение приветствие пользователю GradeBook { cout << "Wellcome to the grade book for\n" << getCourseName(); cout << "!" << endl; } // файл CourseC++.cpp // Демонстрация класса GradeBook после отделения его интерфейса // от реализации #include <iostream> using namespace std; #include "GradeBook.h" // включить определение класса GradeBook int main() { // создать два объекта GradeBook GradeBook gradeBook1("CS101 Introduction to C++ Programming"); GradeBook gradeBook2("CS102 Data Structures in C++"); // вывести исходное значение сourseName для каждого GradeBook cout << "gradeBook1 created for:" << gradeBook1.getCourseName() << endl; cout << "gradeBook2 created for:" << gradeBook2.getCourseName() << endl; cout << endl; return 0; } Последний раз редактировалось Aaron Cash; 11.10.2011 в 16:07. |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Как обойти "преобразование типа из "string" в "float" невозможно" | lexluter1988 | Помощь студентам | 1 | 07.08.2010 12:23 |
Паскаль. 2 задачи (Программа "Верификация","КАК БРИГАДИРУ РАЗДЕЛИТЬ ЗАРОБОТАННЫЕ ДЕНЬГИ") | Valik102 | Помощь студентам | 3 | 20.05.2009 20:42 |
две задачи(программа"верификация" , "как бригадиру разделить зароботаные деньги) | Valik102 | Паскаль, Turbo Pascal, PascalABC.NET | 0 | 13.05.2009 23:32 |
две задачи(программа"верификация" , "как бригадиру разделить зароботаные деньги) | Valik102 | Паскаль, Turbo Pascal, PascalABC.NET | 0 | 13.05.2009 18:13 |