Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Не работает код программы 
:(
    Опции темы
vikaz
Дата 26.7.2009, 12:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 869
Регистрация: 15.2.2006

Репутация: 10
Всего: 12



Всем добрый! не работает сл. код. Подскажите почему!
Пытаюсь передать структуру сл. образом!

unit2.h
Код


......
struct PlugInfo
{
 AnsiString qwe;
};

.......


unit2.cpp
Код

void __fastcall TForm2::Button2Click(TObject *Sender)
{
 PlugInfo Info;
 Info.qwe = "Проверка";
 ShowMessage (Info.qwe);
 (new TForm3(Application, &Info))->Show();
}


unit3.h
Код

....
struct PlugInfo_2
{
 AnsiString qwe;
};

class TForm3 : public TForm
{
__published:    // IDE-managed Components
    TEdit *Edit1;
    TButton *Button1;
private:    // User declarations
public:        // User declarations
    __fastcall TForm3(TComponent* Owner, PlugInfo_2 *PlugInfo2);
    __fastcall TForm3(TComponent* Owner);
};


unit3.cpp

Код


//---------------------------------------------------------------------------
__fastcall TForm3::TForm3(TComponent* Owner, PlugInfo_2 *PlugInfo2)
    : TForm(Owner)
{
}
//---------------------------------------------------------------------------
__fastcall TForm3::TForm3(TComponent* Owner)
    : TForm(Owner)
{
}
//---------------------------------------------------------------------------


Компилятор выдает сл. ошибку:

[BCC32 Error] Unit2.cpp(38): E2285 Could not find a match for 'TForm3::TForm3(TApplication *,PlugInfo *)'


Хотя, если вызывать Form3 вот так, все работает нормально:
Код

 new TForm3(Application))->Show();


Это сообщение отредактировал(а) vikaz - 26.7.2009, 12:20


--------------------
user posted image

Нет ничего настолько исправного, чтобы в нем не было ошибок. /Ф. Петрарка/ 
PM MAIL ICQ Skype   Вверх
mrbrooks
Дата 26.7.2009, 13:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


трололомен
****


Профиль
Группа: Завсегдатай
Сообщений: 4259
Регистрация: 4.10.2006
Где: Дол Гулдур

Репутация: 167
Всего: 306



С точки зрения проектирования ты поступаешь не по христиански.
Вот что наводит на размышление - структуры PlugInfo и PlugInfo_2 как бэ разные типы данных. Тем более не ясно зачем их вообще дублировать. Достаточно в отдельном хидаре определить эту структуру и подключать его к своим формам.

PM MAIL   Вверх
vikaz
Дата 26.7.2009, 13:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 869
Регистрация: 15.2.2006

Репутация: 10
Всего: 12



Цитата(mrbrooks @  26.7.2009,  13:12 Найти цитируемый пост)
С точки зрения проектирования ты поступаешь не по христиански.
Вот что наводит на размышление - структуры PlugInfo и PlugInfo_2 как бэ разные типы данных. Тем более не ясно зачем их вообще дублировать. Достаточно в отдельном хидаре определить эту структуру и подключать его к своим формам.

Так с самого начала и делал, но компилятор ругается на двойное то ли дублирование, то ли двойное подключение..... точно не скажу
Но так и собирался делать!



--------------------
user posted image

Нет ничего настолько исправного, чтобы в нем не было ошибок. /Ф. Петрарка/ 
PM MAIL ICQ Skype   Вверх
vikaz
Дата 26.7.2009, 13:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 869
Регистрация: 15.2.2006

Репутация: 10
Всего: 12



mrbrooks,  я сейчас попробовал снести все в один h файл и запустить на пустом проекте и все заработало. Чудеса.... smile 


--------------------
user posted image

Нет ничего настолько исправного, чтобы в нем не было ошибок. /Ф. Петрарка/ 
PM MAIL ICQ Skype   Вверх
mrbrooks
Дата 26.7.2009, 13:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


трололомен
****


Профиль
Группа: Завсегдатай
Сообщений: 4259
Регистрация: 4.10.2006
Где: Дол Гулдур

Репутация: 167
Всего: 306



Попробуй так. 

unit2.cpp
Код

#include "unit3.h"
....
void __fastcall TForm2::Button2Click(TObject *Sender)
{
 PlugInfo Info;
 Info.qwe = "Проверка";
 (new TForm3(this, &Info))->Show();
}

unit3.h
Код

struct PlugInfo
{
 AnsiString qwe;
};
class TForm3 : public TForm
{
__published:    // IDE-managed Components
    TEdit *Edit1;
    TButton *Button1;
private:    // User declarations
public:        // User declarations
    __fastcall TForm3(TComponent* Owner, PlugInfo *pi);
    __fastcall TForm3(TComponent* Owner);
};

unit3.сpp
Код


__fastcall TForm3::TForm3(TComponent* Owner, PlugInfo* pi)
    : TForm(Owner)
{
 Caption = pi->qwe;
}
//---------------------------------------------------------------------------
__fastcall TForm3::TForm3(TComponent* Owner)
    : TForm(Owner)
{
}


ps. Разумеется форма 3 убрана из авто-создания проекта?

Добавлено через 1 минуту и 11 секунд
Цитата(vikaz @  26.7.2009,  13:41 Найти цитируемый пост)
mrbrooks,  я сейчас попробовал снести все в один h файл и запустить на пустом проекте и все заработало. Чудеса.... 

бывает
PM MAIL   Вверх
vikaz
Дата 26.7.2009, 13:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 869
Регистрация: 15.2.2006

Репутация: 10
Всего: 12



Цитата(mrbrooks @  26.7.2009,  13:48 Найти цитируемый пост)
ps. Разумеется форма 3 убрана из авто-создания проекта? 

Конечно убрана! Благодарю тебя комрад, но у меня уже тоже получилось! smile Хотя, когда пытался на живом проекте так сделать, не получилось! Еще раз спасибо!




--------------------
user posted image

Нет ничего настолько исправного, чтобы в нем не было ошибок. /Ф. Петрарка/ 
PM MAIL ICQ Skype   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С++ Builder"
Rrader

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по С++ Builder обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Настоятельно рекомендуем заглянуть в DRKB (Delphi Russian Knowledge Base) - крупнейший в рунете сборник материалов по Дельфи


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Rrader.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C++ Builder | Следующая тема »


 




[ Время генерации скрипта: 0.0516 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.