Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > C++ Builder
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 24.12.2011, 20:49   #1
mexmexmex
 
Аватар для mexmexmex
 
Регистрация: 04.02.2011
Сообщений: 6
По умолчанию Ошибка Unresolved external 'AVIA::AVIA(int, System::AnsiString, System::AnsiString, System::AnsiString, int)

К вот этой форме

.cpp
Код:
//---------------------------------------------------------------------------

#include <vcl.h>
#pragma hdrstop
#include "Unit1.h"
#include "Unit2.h"
#include "avia.h"
#include <stdio.h>
extern AVIA *temp[20];
extern int cnt=0;
extern DataRec_T avias;
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm2 *Form2;
//---------------------------------------------------------------------------
__fastcall TForm2::TForm2(TComponent* Owner)
        : TForm(Owner)
{
}
//---------------------------------------------------------------------------

void __fastcall TForm2::RadioGroup1Click(TObject *Sender)
{
 if (RadioGroup1->ItemIndex==0)
        {
                Label6->Visible=false;
                Label7->Visible=false;
                Edit2->Visible= false;
                MaskEdit3->Visible=false;
        }
else
        {
                Label6->Visible=true;
                Label7->Visible=true;
                Edit2->Visible=true;
                MaskEdit3->Visible=true;
        }
}
//---------------------------------------------------------------------------
void __fastcall TForm2::Button2Click(TObject *Sender)
{
        Close();
        Edit1->Text="";
        Edit2->Text="";
        MaskEdit1->Text="";
        MaskEdit2->Text="";
        MaskEdit3->Text="";
}
//---------------------------------------------------------------------------
void __fastcall TForm2::Button1Click(TObject *Sender)
{
        int i;
        if((Edit1->Text=="")||(Edit2->Text=="")||(MaskEdit1->Text==""))
        {
                ShowMessage("заполни все поля!");
        }
        else
        {
                avias.TIME=MaskEdit1->Text;
                avias.NOMER=StrToInt(MaskEdit2->Text);
                avias.DATE=DateTimePicker1->Date;
                avias.PUNKT=Edit1->Text;
                avias.SVOBOD=StrToInt(MaskEdit4->Text);
                if (RadioGroup1->ItemIndex==1)
                {
                        avias.NAZV=Edit2->Text;
                        avias.PRIL=MaskEdit3->Text;
                }
                {
                        for(i=cnt-1;i>=0;i--)
                        {
                                temp[i+1]=temp[i];
                        }
                        switch (RadioGroup1->ItemIndex)
                        {
                                case 0:temp[0]=new AVIA(avias.NOMER,avias.TIME,avias.DATE,avias.PUNKT,avias.SVOBOD);cnt++;break;
                                case 1:temp[0]=new PROMEG(avias.NOMER,avias.TIME,avias.DATE,avias.PUNKT,avias.SVOBOD,avias.NAZV,avias.PRIL);cnt++;break;
                        }
                }
                Edit1->Text="";
                Edit2->Text="";
                MaskEdit1->Text="";
                MaskEdit2->Text="";
                MaskEdit3->Text="";
        }
}

//---------------------------------------------------------------------------
.h
Код:
#include <Forms.hpp>
#include <ComCtrls.hpp>
#include <ExtCtrls.hpp>
#include <Mask.hpp>
//---------------------------------------------------------------------------
class TForm2 : public TForm
{
__published:	// IDE-managed Components
        TLabel *Label1;
        TLabel *Label2;
        TLabel *Label3;
        TLabel *Label4;
        TLabel *Label5;
        TLabel *Label6;
        TLabel *Label7;
        TMaskEdit *MaskEdit1;
        TMaskEdit *MaskEdit2;
        TDateTimePicker *DateTimePicker1;
        TEdit *Edit1;
        TRadioGroup *RadioGroup1;
        TEdit *Edit2;
        TMaskEdit *MaskEdit3;
        TButton *Button1;
        TButton *Button2;
        TMaskEdit *MaskEdit4;
        TLabel *Label8;
        void __fastcall RadioGroup1Click(TObject *Sender);
        void __fastcall Button2Click(TObject *Sender);
        void __fastcall Button1Click(TObject *Sender);
private:	// User declarations
public:		// User declarations
        __fastcall TForm2(TComponent* Owner);
};
//---------------------------------------------------------------------------
extern PACKAGE TForm2 *Form2;
//---------------------------------------------------------------------------
#endif
mexmexmex вне форума Ответить с цитированием
Старый 24.12.2011, 20:50   #2
mexmexmex
 
Аватар для mexmexmex
 
Регистрация: 04.02.2011
Сообщений: 6
По умолчанию

К этой форме

.cpp
Код:
//---------------------------------------------------------------------------

#include <vcl.h>
#pragma hdrstop

#include "Unit1.h"
#include "Unit2.h"
#include "avia.h"
#include <stdio.h>
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;
AVIA *temp[20];//массив экземпляров базового класса
int cnt=0,nz; //кол-во записей, номер записей
DataRec_T avias; // Структура для заполнения вводимыми  данными
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
        : TForm(Owner)
{
}
//---------------------------------------------------------------------------
void __fastcall TForm1::N5Click(TObject *Sender)
{
        Close();
}
//---------------------------------------------------------------------------
void __fastcall TForm1::N6Click(TObject *Sender)
{
        Form2->ShowModal();
}
//---------------------------------------------------------------------------
.h
Код:
//---------------------------------------------------------------------------

#ifndef Unit1H
#define Unit1H
//---------------------------------------------------------------------------
#include <Classes.hpp>
#include <Controls.hpp>
#include <StdCtrls.hpp>
#include <Forms.hpp>
#include <Menus.hpp>
#include <stdio.h>
struct DataRec_T
{
        int NOMER;AnsiString TIME;AnsiString DATE;int SVOBOD;AnsiString PUNKT;AnsiString NAZV;AnsiString PRIL;
}; //Структура для заполнения вводимыми  данными
//---------------------------------------------------------------------------
class TForm1 : public TForm
{
__published:	// IDE-managed Components
        TMainMenu *MainMenu1;
        TMenuItem *N1;
        TMenuItem *N2;
        TMenuItem *N3;
        TMenuItem *N4;
        TMenuItem *N5;
        TMenuItem *N6;
        TMenuItem *N7;
        TMenuItem *N8;
        TMenuItem *N9;
        TMenuItem *N10;
        TMenuItem *N11;
        void __fastcall N5Click(TObject *Sender);
        void __fastcall N6Click(TObject *Sender);
private:	// User declarations
public:		// User declarations
        __fastcall TForm1(TComponent* Owner);
};
//---------------------------------------------------------------------------
extern PACKAGE TForm1 *Form1;
//---------------------------------------------------------------------------
#endif
Класс
Код:
#include <stdio.h>
class AVIA //класс предок
{
        private:
        AnsiString PUNKT,TIME,DATE;
        int SVOBOD,NOMER;
        public:
        AVIA(int N,AnsiString T,AnsiString D,AnsiString P,int S);
        AnsiString getPUNKT(){return PUNKT;};
        AnsiString getTIME(){return TIME;};
        AnsiString getDATE(){return DATE;};
        int getSVOBOD(){return SVOBOD;};
        int getNOMER(){return NOMER;};
        void setPUNKT(AnsiString P){PUNKT=P;};
        void setTIME(AnsiString T){TIME=T;};
        void setDATE(AnsiString D){DATE=D;};
        void setSVOBOD(int S){SVOBOD=S;};
        void setNOMER(int N){NOMER=N;};
        virtual ~AVIA(){   };
        virtual AnsiString print();
};

class PROMEG:public AVIA //класс потомок
{
        private:
        AnsiString NAZV,PRIL;
        public:
        AnsiString NA;
        AnsiString PR;
        PROMEG(int N,AnsiString T,AnsiString D,AnsiString P,int S,AnsiString NA,AnsiString PR);
        AnsiString print();//метод одноименный методу предка класса
        AnsiString getNAZV(){return NAZV;};
        AnsiString getPRIL(){return PRIL;};
        void setNAZV(AnsiString NA){NAZV=NA;};
        void setPRIL(AnsiString PR){PRIL=PR;};
};

AnsiString AVIA::print()//метод print для вывода экземпляров класса на экран
{
        AnsiString rez;
        rez="№ рейса-"+IntToStr(getNOMER())+" ,время вылета:"+getTIME()+" ,дата вылета:"+getDATE()+" ,пункт назначения:"+getPUNKT()+" ,количество свободных мест:"+IntToStr(getSVOBOD());
        return rez;

};

PROMEG::PROMEG(int N,AnsiString T,AnsiString D,AnsiString P,int S,AnsiString NA,AnsiString PR)//имя класса::имя метода класса
        :AVIA(N,T,D,P,S),NAZV(NA),PRIL(PR)//Установление соответствия поля и параметра
{}
AnsiString PROMEG::print()//метод print
{
        AnsiString rez;
        rez=AVIA::print()+" ,название промежуточного пункта:"+getNAZV()+" ,время прилета:"+getPRIL();
        return rez;
};
Выдает такую ошибку

Всё делала по требованиям преподавателя
mexmexmex вне форума Ответить с цитированием
Старый 24.12.2011, 20:51   #3
mexmexmex
 
Аватар для mexmexmex
 
Регистрация: 04.02.2011
Сообщений: 6
По умолчанию

Пыталась как можно подробнее описать проблему. Подскажите что не так делаю?
mexmexmex вне форума Ответить с цитированием
Старый 27.12.2011, 13:31   #4
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,707
По умолчанию

вам же написали: конструктор объявили, но не реализовали
p51x вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Проблемы с AnsiString Жора_ Помощь студентам 0 08.11.2011 23:33
Вопрос по AnsiString Smitt&Wesson C++ Builder 2 30.09.2011 13:08
проблема с AnsiString Lady IcE Общие вопросы C/C++ 2 17.03.2011 21:25
AnsiString CodeNOT Общие вопросы C/C++ 4 12.11.2010 17:08
AnsiString to Int NoF[1]X Общие вопросы C/C++ 4 22.07.2009 00:08