Вопрос № 84839: Здравствуйте
Пишу dll на builder 6. Подскажите, как секцию данных сделать разделяемой? Примеров для VC в инете куча, а для Builder нет(...Вопрос № 84910: добрый день. возникла такая проблема: есть массив из 10 элементов(0..9) Нужно переставить четные элементы вперед а остальные назад. тоесть сделать порядок элементов таким 0 2 4 6 8 1 3 5 7 9.
спасибо....Вопрос № 84931: Мир вам, уважаемые эксперты!
Мой вопрос связан не с Си, а с Developer Studio, но надеюсь, вы сможете мне помочь...
Допустим, имеется программа main.c, в которой применяется функция func (все имена вымышлены, все совпадения случайны :) ). Имее...Вопрос № 84956: Пишу в C++Builder6. Есть функция в которую передается хэндл окна h_wnd и далее создается форма, родителем которой является указанное окно.
В делфи это делается так:
Form1:=TForm1.CreateParented(h_wnd);
А как сделать подобное в C++Builder6...
Вопрос № 84.839
Здравствуйте
Пишу dll на builder 6. Подскажите, как секцию данных сделать разделяемой? Примеров для VC в инете куча, а для Builder нет(
Отправлен: 30.04.2007, 16:08
Вопрос задал: Sov (статус: 2-ой класс)
Всего ответов: 1 Мини-форум вопроса >>> (сообщений: 0)
Отвечает: kool
Здравствуйте, Sov!
Нужно добавить в проект *.def
файл следующего содержания: см. прил.
вместо моих параметров подставляй свои.
Удачи!
Приложение:
--------- I am.
Ответ отправил: kool (статус: Студент)
Ответ отправлен: 30.04.2007, 17:19 Оценка за ответ: 5 Комментарий оценки: Спасибо
Вопрос № 84.910
добрый день. возникла такая проблема: есть массив из 10 элементов(0..9) Нужно переставить четные элементы вперед а остальные назад. тоесть сделать порядок элементов таким 0 2 4 6 8 1 3 5 7 9.
спасибо.
Отправлен: 01.05.2007, 08:49
Вопрос задал: Biggle (статус: Посетитель)
Всего ответов: 2 Мини-форум вопроса >>> (сообщений: 0)
Отвечает: John Paramol
Здравствуйте, Biggle!
Код в приложении. В цикле от начального элемента до предпоследнего ищем четный элемент, расположенный за нечетным, и ,если находим, переставляем их местами и увеличиваем счетчик перестановок. Все это дело в бесконечном цикле, пока счетчик перестановок не равен нулю.
Удачи!
Приложение:
--------- 1=2, at values 1 large enough
Ответ отправил: John Paramol (статус: 7-ой класс)
Ответ отправлен: 01.05.2007, 23:47
Отвечает: Терсков Сергей
Здравствуйте, Biggle!
Вот STL-ный вариант с использованием доп. массивов.
Приложение:
Ответ отправил: Терсков Сергей (статус: 8-ой класс)
Ответ отправлен: 02.05.2007, 03:51
Вопрос № 84.931
Мир вам, уважаемые эксперты!
Мой вопрос связан не с Си, а с Developer Studio, но надеюсь, вы сможете мне помочь...
Допустим, имеется программа main.c, в которой применяется функция func (все имена вымышлены, все совпадения случайны :) ). Имеется также дцать вариантов этой функции, прописанных в файлах a.c, b.c, c.c, ...
Разумеется, если я их все сразу кидаю в проект он не линкуется. Мне же нужно получить дцать программ a.exe, b.exe, c.exe , ... , в которых к main.c прилинкованы соответствующие версии функции. Можно ли это как-нибудь автоматизировать?
С уважением, Лука.
Отправлен: 01.05.2007, 11:57
Вопрос задал: Лука (статус: 9-ый класс)
Всего ответов: 2 Мини-форум вопроса >>> (сообщений: 0)
Отвечает: Unreal2004
Здравствуйте, Лука!
Я такую штуку делал по CB6.0 следующим образом - создавал группу проектов, соответственно каждый
проект называется A B C D ..., или даже могут называться одинаково, только в опция&
#1093; проектов надо пути разные прописать.
В каждом проекте одни и те же основные файлы, а вот дополнительно включаются нужные файлы
cpp. И опции проектов могут быть разные (тогда по ifdef можно даже прототипы и вызовы
76;елать в зависимости от контекста).
Тогда получаются файлы A.exe B.exe и т.д. нужного типа.
Есть правда проблема - перед окончательной сборкой надо тщательно проверять, чтобы у всех
проектов опции были одинаковые.
Вот такой рецепт я использую для себя.
Слышал о возможности создания пакетных файлов, но ИМХО это гимор.
Ответ отправил: Unreal2004 (статус: 2-ой класс)
Ответ отправлен: 01.05.2007, 13:14 Оценка за ответ: 5 Комментарий оценки: Проблемма в том, что при внесении изменения в main.c придется открывать персонально каждый проект и линковать его. Именно этого я и хотел избежать. Тем не менее, спасибо за совет.
Отвечает: kool
Здравствуйте, Лука!
Можно использовать командный файл и
вызывать в нем компиляцию и линковку нужных файлов.
Удачи!
--------- I am.
Ответ отправил: kool (статус: Студент)
Ответ отправлен: 01.05.2007, 16:35 Оценка за ответ: 5 Комментарий оценки: Похоже, так и придется делать. Но я надеялся, что в DS есть какой-нибудь аналог makefile...
Вопрос № 84.956
Пишу в C++Builder6. Есть функция в которую передается хэндл окна h_wnd и далее создается форма, родителем которой является указанное окно.
В делфи это делается так:
Form1:=TForm1.CreateParented(h_wnd);
А как сделать подобное в C++Builder6?
Отправлен: 01.05.2007, 13:57
Вопрос задал: Diver (статус: Посетитель)
Всего ответов: 2 Мини-форум вопроса >>> (сообщений: 0)
::SetParent(Form1->Handle, hwnd);
^ ^
хэндл дочернего окна хэндл нового родителя
При необходимости поставьте в TForm1::FormPaint Form1->Repaint()
Ответ отправил: Lomer (статус: 4-ый класс)
Ответ отправлен: 01.05.2007, 16:34
Отвечает: John Paramol
Здравствуйте, Diver!
Средствами VCL это это можно сделать как минимум 2 способами:
1)
TForm1 *F = (TForm1*)CreateParentedControl(TForm1::ClassType(),Handle);
F->Show();
2)
В классе TForm есть конструктор, принимающий в кач. параметра дескриптор родительского окна.
Но по умолчанию в классе TForm1 он не объявлен. Если в классе TForm1 в разделе public вставить конструктор такого вида:
__fastcall TForm1(HWND ParentWindow):TForm(ParentWindow) { }
То можно создавать экземпляр формы так:
TForm1 *F = new TForm1(Handle);
F->Show();
Второй способ в конечном счете работает по принципу первого.
Но, ф-ия CreateParentedControl должна применяться для родительских окон, НЕ являющихся окнами, создаваемыми библиотекой VCL. Иначе, возникают проблемы в деструкторе объектов.
--------- 1=2, at values 1 large enough
Ответ отправил: John Paramol (статус: 7-ой класс)
Ответ отправлен: 02.05.2007, 09:15