Logo Море(!) аналитической информации!
IT-консалтинг Software Engineering Программирование СУБД Безопасность Internet Сети Операционные системы Hardware
Архив форумов ЦИТФорума
Море(!) вопросов - Море(!) ответов
 
 FAQFAQ   ПоискПоиск   ПользователиПользователи   ГруппыГруппы   РегистрацияРегистрация 
 ПрофильПрофиль   Войти и проверить личные сообщенияВойти и проверить личные сообщения   ВходВход 
Как правильно задавать вопросы

Объявление переменных в С++ Builder 5

 
Перейти:  
Этот форум закрыт, вы не можете писать новые сообщения и редактировать старые.   Эта тема закрыта, вы не можете писать ответы и редактировать сообщения.    Список форумов Архив форумов ЦИТФорума -> Программирование
Предыдущая тема :: Следующая тема  
Автор Сообщение
Pas1



Зарегистрирован: 08.01.2003
Сообщения: 2

СообщениеДобавлено: Ср Янв 08 2003 02:29    Заголовок сообщения: Объявление переменных в С++ Builder 5 Ответить с цитатой

Имеется проект с двумя формами Form1 и Form3 в заголовочном файле Form1 (Unit1.cpp) переменные обьявлены так:
struct TKat {
AnsiString Name, Kredit, Kat, SubKat;
int Num,Col,FlagSubKat;
TKat *old,*news;
};
TKat *P0=NULL, *Pnew=NULL, *Pold=NULL;
int nom=0,nomTree=0;
в отдельных модулях (Unit1.cpp и Unit2.cpp) на переменные ссылок нет
при работе с ними в модуле Unit2.cpp все нормально, но когда пытаюсь работать с ними в Unit1.cpp программа при подходе к соответствующей строке вызывает ошибку обращения к памяти.
Подскажите в чем дело плиз.
С уважением, Алексей. (pas1@e-mail.ru)
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
_Evgen



Зарегистрирован: 05.01.2003
Сообщения: 6

СообщениеДобавлено: Ср Янв 08 2003 11:50    Заголовок сообщения: Re: Объявление переменных в С++ Builder 5 Ответить с цитатой

все конечно хорошо.....но нафика переменные запихивать в структуру это вопервых....вполне бы сгодилось:
AnsiString Name, Kredit, Kat, SubKat;
int Num,Col,FlagSubKat;
TKat *old,*news;


далее....TKat *old,*news - объявленны как динамические переменные.....перед использованием их нужно проиниацилизировать путем :
old = new TKat;
news = new TKat;
и далее обращаться к ним через указатель

если нет особой надобности в димамических переменных сделай их обчными статическими вида:
TKat old, news;
тогда эти переменные автоматом будут инициализироваться конструктором того класса в котором они объявленны и обращаться к ним можно будет обычным образом без использования указателей


ВСЕ

>>Имеется проект с двумя формами Form1 и Form3 в заголовочном файле Form1 (Unit1.cpp) переменные обьявлены так:
>>struct TKat {
>> AnsiString Name, Kredit, Kat, SubKat;
>> int Num,Col,FlagSubKat;
>> TKat *old,*news;
>> };
>> TKat *P0=NULL, *Pnew=NULL, *Pold=NULL;
>> int nom=0,nomTree=0;
>>в отдельных модулях (Unit1.cpp и Unit2.cpp) на переменные ссылок нет
>>при работе с ними в модуле Unit2.cpp все нормально, но когда пытаюсь работать с ними в Unit1.cpp программа при подходе к соответствующей строке вызывает ошибку обращения к памяти.
>>Подскажите в чем дело плиз.
>>С уважением, Алексей. (pas1@e-mail.ru)
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Pas1



Зарегистрирован: 08.01.2003
Сообщения: 2

СообщениеДобавлено: Ср Янв 08 2003 14:20    Заголовок сообщения: Re: Объявление переменных в С++ Builder 5 Ответить с цитатой

1) Динамическая структура выбрана тюкю заранее не известно количество таких структур. Данные о колекции компакт дисков.
2) Я использую оператор new при кождом новом добавлении инф. о компакте.
У меня проблема вызвана скорее всего областью видимости переменных объявленных в заголовочном файле 1.h и при этом переменные видны в файле 2.cpp, но не видны в файле 1.cpp. В 1.срр я обращаюсь к уже созданным структурам и объявление с new как я понимаю не нужно.
С уважением Алексей.
PS: могу выслать исходники мылом.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Adil
Гость





СообщениеДобавлено: Чт Янв 09 2003 11:23    Заголовок сообщения: Re: Объявление переменных в С++ Builder 5 Ответить с цитатой

Вышли...
Вернуться к началу
Показать сообщения:   
Этот форум закрыт, вы не можете писать новые сообщения и редактировать старые.   Эта тема закрыта, вы не можете писать ответы и редактировать сообщения.    Список форумов Архив форумов ЦИТФорума -> Программирование Часовой пояс: GMT + 3
Страница 1 из 1

 
Перейти:  
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах


Powered by phpBB © 2001, 2002 phpBB Group
Русская поддержка phpBB

 

IT-консалтинг Software Engineering Программирование СУБД Безопасность Internet Сети Операционные системы Hardware

Информация для рекламодателей PR-акции, размещение рекламы — adv@citforum.ru,
тел. +7 495 6608306, ICQ 232284597
Пресс-релизы — pr@citforum.ru
Послать комментарий
Информация для авторов
This Web server launched on February 24, 1997
Copyright © 1997-2000 CIT, © 2001-2006 CIT Forum
Внимание! Любой из материалов, опубликованных на этом сервере, не может быть воспроизведен в какой бы то ни было форме и какими бы то ни было средствами без письменного разрешения владельцев авторских прав. Подробнее...