![]() |
|
Модераторы: Daevaorn |
![]()
|
|
| Vyacheslav |
|
||||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 2124 Регистрация: 25.3.2002 Где: Москва Репутация: 9 Всего: 59 |
HexoGenus
При правильном оформлени h-файла его спокойно можно цеплять к всем формам проекта. Спорить с этим бесполезно. Открой h-файл любой формы и увидишь обязательно #include <vcl.h> RAN
Небольшая поправочка: в общем случае ты прав, но в частности... не совсем.
Что же касается функций, то inline-функциям место как раз в h-файлах -------------------- С уважением, Вячеслав Ермолаев |
||||
|
|||||
| HexoGenus |
|
|||
![]() Шустрый ![]() Профиль Группа: Экс. модератор Сообщений: 110 Регистрация: 28.8.2002 Где: Ростов-на-Дону Репутация: нет Всего: нет |
Хмммм.... сложно вести обсуждение когда приходится каждый раз повторять одно и тоже в полном и неизменном виде... уточню свою фразу:
Нельзя подключить *.cpp файл при помощи команды include к нескольким формам сразу... и как вы его не оформите это верно для билдера на 100% А для одной формы работает вполне... И проблему я поднял как раз подключения cpp файлов а не h inline и extern функции меня в данном случае не интересуют... Самое красивое из того что было предложено это lib файлы ... И пока что я пришел к выводу что фирма борланд нас прокатила... потому что раньше в borland c++ для dos я через include прекрасно мог подключить свои cpp файлы а теперь немогу... Подключение cpp файлов через менеджер проекта это извращение а другого способа нет... К тому же в визуале как нам уже сказали компилятор сам ищет cpp файлы по указанным в опциях проекта папкам... кто мешал сделать то же самое фирме borland??? Кстати я так понимаю Борланд взамен предлагает создание своих невизуальных компонентов (что то никто этот вариант не предложил) но настолько переходить от клавиатуры к мышке мне что то неохота... Это сообщение отредактировал(а) HexoGenus - 25.7.2003, 19:17 --------------------
Когда невозможно уже работать напряженнее, начни работать умнее. |
|||
|
||||
| RAN |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 709 Регистрация: 14.3.2003 Где: Щёлково Моск.обл. Репутация: 5 Всего: 6 |
HexoGenus, прежде чем такое писать (я про предыдущий топик), разберись хорошенько во всём и прочти всё, что тебе тут писали, а не путай людей (особенно новичков).
Во-первых, в языке ничего не изменилось. И cpp никогда нельзя было подключать несколько раз, их вообще не принято подключать. А тебе предлагалось подключить их один раз в одном месте. Лучше их подключать в главном файле приложения, где Run метод вызывается (если ты о таком файле слышал). Во-вторых, пользоваться менеджером - это не извращение. Не утверждай то, что является всего-лишь твоим мнением. Я, например, VCL в C++ не люблю использовать, это для Delphi, но никогда не позволял себе говорить, что использование VCL - изврат. В-третьих, VC ничего сам не ишет (сам проверил), и выше я об этом писал, просто ты сам невнимательно читаешь.
Если Borland и кидала когда-то (например, прикратила развитие OWL), то в данном контексте такое заявление не обосновано. |
|||
|
||||
| HexoGenus |
|
|||
![]() Шустрый ![]() Профиль Группа: Экс. модератор Сообщений: 110 Регистрация: 28.8.2002 Где: Ростов-на-Дону Репутация: нет Всего: нет |
Хмммм ... не только слышал но даже и использую при написании приложений которые нужно скрыть от пользователя... Собрался уж было возмущаться по этому поводу, но обычно перед тем как утверждать нужно попробовать... Попробовал и заработало! Оказывается если к главному модулю подключить при помощи include *.h файл то это нисколько не повлияет на видимость функций описанных в этом h файле на других формах (даже если подключить соответствующий cpp файл через менеджер проекта) а вот если подключить к главному модулю cpp файл а потом на нужных формах подключать h файл с описанием функций то все работает... Так что теперь можно поступать так: создаем свой каталог для *.cpp файлов (к примеру этот же каталог у нас будет содержать *.h файлы) Подключаем этот каталог к билдеру в опциях в строке Options->Project->Directories...->Include path дописываем: ;$(BCB)\include\my (не забыть поставить птичку в Default) создаем там главный файл включающий список всех своих *.cpp файлов MyFunction.cpp #include "MyMath.cpp"; #include "MyGraph.cpp"; #include "MyMessage.cpp"; потом подключаем этот файл к главному модулю проекта Project1.cpp #include "MyFunction.cpp"; После этого на любой форме мы можем подключить свой *.h файл Unit1.cpp #include "MyMath.h"; И все работает! ОГРОМНОЕ ВСЕМ ВАМ СПАСИБО !!! PS И все равно пользоваться менеджером для подключения не нескольких, а большого количества файлов к каждому своему проекту это извращение --------------------
Когда невозможно уже работать напряженнее, начни работать умнее. |
|||
|
||||
| mr.DUDA |
|
|||
|
3D-маньяк ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 8244 Регистрация: 27.7.2003 Где: город-герой Минск Репутация: 25 Всего: 232 |
Народ, а никто не пробовал
Говорят, помогает -------------------- ![]() |
|||
|
||||
![]()
|
| Правила форума "С++:Общие вопросы" | |
|
|
Добро пожаловать!
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C/C++: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |