|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
02.09.2010, 20:40 | #1 |
Пользователь
Регистрация: 12.05.2010
Сообщений: 61
|
Ошибки при линковке.
Мой код:
Figure.h //--------------------------------------------------------------------------- #ifndef FIGURE_H #define FIGURE_H #include <stdlib.h> #define MaxSize 553 //--------------------------------------------------------------------------- class Figure { // Абстрактный класс public: Figure(); virtual ~Figure() { // Деструктор. ОБЯЗАТЕЛЬНО должен быть виртуальным у полиморфных } // (использующих виртуальные функции) классов virtual void setLine(); virtual void Draw() const = 0; //Обьявлена чистая виртуальная функция void getX() { // Получение координаты x x=random(MaxSize); }; void getY() { // Получение координаты y y=random(MaxSize); }; protected: int x; int y; TPoint p[10]; }; class Line: public Figure { public: Line() { // Конструктор for (int i=0; i<2; ++i) { p[i].x=-1; // По умолчанию коордтнатам присваивается значение -1 p[i].y=-1; } }; void setLine() { for (int i=0; i<2; ++i) { Line::getX(); p[i].x=x; Line::getY(); p[i].y=y; } }; void Draw() const; // Рисование фигуры protected: int x; int y; TPoint p[2]; }; //--------------------------------------------------------------------------- #endif Figure.cpp //--------------------------------------------------------------------------- #include <vcl.h> #pragma hdrstop #include "Figure.h" #include "Unit1.h" #pragma package(smart_init) //--------------------------------------------------------------------------- // class Line //--------------------------------------------------------------------------- void Line::Draw() const { Form1->PaintBox1->Canvas->Polyline(p,2); } Unit1.cpp //--------------------------------------------------------------------------- #include <vcl.h> #pragma hdrstop #include "Unit1.h" //--------------------------------------------------------------------------- #pragma package(smart_init) #pragma resource "*.dfm" TForm1 *Form1; //--------------------------------------------------------------------------- __fastcall TForm1::TForm1(TComponent* Owner) : TForm(Owner) { } //--------------------------------------------------------------------------- #include <stdio.h> #include <iostream.h> #define MaxSize 553 void __fastcall TForm1::Button1Click(TObject *Sender) { Line O=Line(); O.Draw(); } void __fastcall TForm1::Button2Click(TObject *Sender) { Form1->Close(); } //--------------------------------------------------------------------------- В Unit.h Figure.h добавлен. Ошибки при линковке: [Linker Error] Unresolved external 'Figure::setLine()' referenced from F:\НОВАЯ ПАПКА\UNIT1.OBJ [Linker Error] Unresolved external 'Figure::Figure()' referenced from F:\НОВАЯ ПАПКА\UNIT1.OBJ Что необходимо подключить для разрешений ошибок? |
02.09.2010, 20:45 | #2 |
Старожил
Регистрация: 21.03.2009
Сообщений: 2,193
|
Ну так... Конструктор и setLine вы объявили. А где же их определения??
P.S. Что-то мне там еще кажется, но пока вы не оформите все это дело в тег CODE (значок #) я не буду себе глаза ломать чтоб понять, кажется мне это или не кажется.
Простые и красивые программы - коды программ + учебник C++
Создание игры - взгляд изнутри - сайт проекта Тема на форуме, посвященная ему же Последний раз редактировалось Гром; 02.09.2010 в 20:47. |
02.09.2010, 21:00 | #3 |
Пользователь
Регистрация: 12.05.2010
Сообщений: 61
|
Мой код:
Figure.h //--------------------------------------------------------------------------- Код:
//--------------------------------------------------------------------------- Код:
Код:
Ошибки при линковке: [Linker Error] Unresolved external 'Figure::setLine()' referenced from F:\НОВАЯ ПАПКА\UNIT1.OBJ [Linker Error] Unresolved external 'Figure::Figure()' referenced from F:\НОВАЯ ПАПКА\UNIT1.OBJ Что необходимо подключить для разрешений ошибок? |
02.09.2010, 21:31 | #4 |
JAVA BEAN
Участник клуба
Регистрация: 22.04.2007
Сообщений: 1,329
|
В Figure.cpp добавить конструктор и setLine()
|
Опции темы | Поиск в этой теме |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Ошибки при инжекте | joker | Win Api | 5 | 21.08.2012 11:04 |
Ошибки при построении | yugik | Visual C++ | 7 | 27.08.2010 17:58 |
Ошибки при сохранении | Alex19789 | Microsoft Office Excel | 6 | 16.10.2009 12:39 |
MS Visual C++, ошибка при линковке... | Пепел Феникса | Visual C++ | 2 | 08.09.2009 16:20 |
Ошибка при линковке | Лотос | Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM | 25 | 22.02.2009 20:24 |