Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

RusFAQ.ru: Программирование на C / C++


Информационный Канал Subscribe.Ru

RusFAQ.ru: Программирование на C / C++

Выпуск № 596
от 03.10.2004, 17:20

Администратор:
Имя: Nick.Box
URL: Информационный ресурс
ICQ: 365124
[censored], [censored]
О рассылке:
Задано вопросов: 1932
Отправлено ответов: 3695
Активность: 191.2 %
[Задать вопрос >>][Регистрация эксперта >>]
[Поиск в базе][Обсудить на форуме]


 Список экспертов, ответы которых опубликованы в данном выпуске

gAmUssA
Статус: Доверительный
Общий рейтинг: 157.57
[Подробней >>]
DiGiT
Статус: Доверительный
Общий рейтинг: 119.25
[Подробней >>]
vitya
Статус: Профессиональный
Общий рейтинг: 109.64
[Подробней >>]
 
Василевский Александр
Статус: Доверительный
Общий рейтинг: 115.81
[Подробней >>]
knick
Статус: Доверительный
Общий рейтинг: 105.12
[Подробней >>]
P@triot
Статус: Начальный
Общий рейтинг: 100.8
[Подробней >>]


 Краткий перечень вопросов

Вопрос № 1917. Здравствуйте, уважаемые эксперты. Благодарю за советы по созанию динамических массивов. Обязательно ... (ответов: 3)
Вопрос № 1918. HELLO!!! Люди помогите пожалуйста! Мне в этом году нужно писать дипломку. Может кто то подсказать ин... (ответов: 3)
Вопрос № 1919. Доброго времени суток уважаемые эксперты. Хочу записаться на занятия посвященные подготовке к различ... (ответов: 4)
Вопрос № 1920. Здравствуйте как в Apache настроить работу с С++ те есть скрипты которые на PHP не тянут, нужно уско... (ответов: 1)
Вопрос № 1922. Здрысть, уважаемые эксперты! Хочу воспользоваться функциями CryptoAPI при написании проги на C-sharp... (ответов: 1)
Вопрос № 1923. Уважаемый эксперт, у меня такой вопрос: я программирую на Visual C++ 6.0, так вот, можно ли в 32-х р... (ответов: 3)
Вопрос № 1924. Уважаемые эксперты! У меня компилятор BorlandC++forDOS Ver3.1 не понимает русский язык, вместо русск... (ответов: 2)
Вопрос № 1925. hello! скажите, есть ли программы для правильного форматирования с++ исходников? (руками - сам знаю ... (ответов: 1)

Вопросов: 8, ответов: 18


 Вопрос № 1917

Здравствуйте, уважаемые эксперты.
Благодарю за советы по созанию динамических массивов. Обязательно опробую шаблон vector.
Возникает другой вопрос. А зачем тогда нужна это динамическая память? Я использовал операторы new/delete для создания массивов переменной длины.
В книжке написано, что куча помогает избавиться от глобальных переменных, но зачем создавать переменные в динамической памяти, если можно просто передать в функцию указатель на существующую переменную. Мороки меньше да и утечка памяти не грозит. Может большие объемы данных стоит там размещать или большие объекты?
Посоветуйте, когда стоит пользоваться динамической памятью. В каких случаях это необходимо или желательно, а когда лучше воздержаться, а когда вообще не имеет смысла. Может поделитесь опытом, как не наделать ошибок при этом.
Надеюсь, что вы поможете мне разобраться в этой сложной, но важной теме.



Вопрос отправлен: 29.09.2004, 17:56
Отправитель: Александр

[Следующий вопрос >>] [Список вопросов]

Отвечает gAmUssA

Здравствуйте, Александр!
Я стараюсь использовать динамическую память тогда, когда, например, размерность массива или матрицы зарание неизвестна. Т.е. пользователь может сам задавать размер. Однажды я писал программу, которая занималась решением систем линейных уравнений. Пользователь мог производить вычисления систем с 300 (!) переменными (можно было вводить и больше, только зачем :-)). Память выделялась в зависимости от размерности системы. Если б я сразу зарезервировал столько памяти (4 байта под тип float * 300*300+300*sizeof(float) - ничего себе зарезервировала прога).


Ответ отправлен: 30.09.2004, 17:55
Отправитель: gAmUssA


Отвечает DiGiT

Доброе время суток, Александр!
А вы знаете что стек не безграничный ? Второй вопрос о каких глобальных переменных шла речь ? В динамической памяти рекомендуется создавать большие структуры данных, а для небольших объектов можно использовать стековую память, так как память в стеке выделяется очень быстро одной операций(просто изменение одного регистра), а вот выделение дополнительной памяти ведет, вообще говоря, к системным вызовам.( Вы когда нибудь получали сообщение Stack Overflow?) если да то суть проблемы ясна, если нет. Еще раз прочитайте, потом операциями new следует выделять память под объект если планируется его использование за областью видимости.

Ответ отправлен: 30.09.2004, 05:27
Отправитель: DiGiT


Отвечает vitya

Приветствую Вас, Александр!
Обычно - большинство структурных объектов создаются в куче.
Глобальные объекты - не самая хорошая вещь. Использовать память в куче надо в зависимости от задачи. Например если вы описываете граф - то все вешины надо описывать как указатели и создавать их динамически.

Ответ отправлен: 30.09.2004, 09:37
Отправитель: vitya


 Вопрос № 1918

HELLO!!!
Люди помогите пожалуйста!
Мне в этом году нужно писать дипломку.
Может кто то подсказать интересную тему.
А то все самое интересное поразбирали.
Спасиба



Вопрос отправлен: 29.09.2004, 21:42
Отправитель: Sergei (prm_serg@list.ru)

[Следующий вопрос >>] [Список вопросов]

Отвечает DiGiT

Доброе время суток, Sergei!
Необходимо название специальности, чтобы сформулировать дипломную работу. Дипломная работа прежде всего должна подтвердить квалификацию студента, не более того. Так если ты информационник, то наверное недостаточно написания какой нибудь программы, а нужно именно создание ИС, (причем написание самой программы для этого диплома может занять не более недели, я даже встречал за 1 день). А если ты математик, то соответсвенно нужно показать, что студент квалифицирован знает методы и умеет их применять на практике.

Ответ отправлен: 30.09.2004, 05:30
Отправитель: DiGiT


Отвечает vitya

Доброе время суток, Sergei!
Асинхрoнное моделирование цифровых схем

Ответ отправлен: 30.09.2004, 09:35
Отправитель: vitya


Отвечает gAmUssA

Доброе время суток, Sergei!
Блин, а направление какое? Я могу посоветовать генетические алгоритмы, нейронные сети, распознавание образов и использывание нейросетей в распознавании.


Ответ отправлен: 30.09.2004, 17:23
Отправитель: gAmUssA


 Вопрос № 1919

Доброго времени суток уважаемые эксперты. Хочу записаться на занятия посвященные подготовке к различным студ олимпиадам по программированию. Требуется мнение экспертов - нужно ли это. помогут ли места на олимпиадах в дальнейшем поиске интересной работы? Может лучше заниматься в ээто время самообразованием читая и познавая новое, вместо решения задач, не требующих высокого уровня ЗНАНИЙ.



Вопрос отправлен: 29.09.2004, 23:34
Отправитель: koshi

[Следующий вопрос >>] [Список вопросов]

Отвечает DiGiT

Здравствуйте, koshi!
Да помогут. Олимпиады во первых могут дать путевку на бесконкурсное поступление в институт, во вторых это бесплатная возможность заставить работать мозги. А умение работать могзами очень важно. Если ты молод не задумываясь берись с возрастом голова станет не та, соображать так быстро не получится да и проблем левых станет больше, там и займешься самообразованием(набиранием опыта). Хотя разве не получится совмещать и то и то?

Ответ отправлен: 30.09.2004, 05:34
Отправитель: DiGiT


Отвечает vitya

Приветствую Вас, koshi!
Знания - они всегда нужны и прогождаются. Участие в олимпиаде ничего не дает, а вот победа (хорошее место, диплом) в серьезной олимпиаде помогут при устройстве.

Ответ отправлен: 30.09.2004, 09:33
Отправитель: vitya


Отвечает Василевский Александр

Добрый день, koshi!
Моё мнение таково: олимпиады конечно вещь хорошая, но не нужная. Подготовка к олимпиаде отнимает огромное количество времени и умственных усилий. На олимпиадах решаются задачи, некоторым образом "оторванные от жизни". Кроме того, по своему опыту знаю, не зависимо от степени подготовки к олимпиаде, перед олимпиадой, ка и перед экзаменами, сильно волнуешься. А, как известно, нервные клетки не восстанавливаются. Так что лучше провести время за самообразованием.


Ответ отправлен: 30.09.2004, 10:28
Отправитель: Василевский Александр


Отвечает gAmUssA

Приветствую Вас, koshi!
На мой взгляд, эти курсы по большо му счёту нифига не дают. Что касается меня, я тоже пробывал себя на этом поприще, мне не понравилось.Я пришёл туда (курсы проходили в моём универе ЛГТУ), сидят чуваки практически ничего не представляющие, а "распальцовка" такая, как будто Пентагоны каждый день ломают как делать нечего. Вообщем, решать тебе, но я советую не заморачиваться разного рода курсами и при наличии свободного времени занятся самообразованием - читать книги, писать проги, посещать форумы и т.п.
Удачи!

Ответ отправлен: 30.09.2004, 17:22
Отправитель: gAmUssA


 Вопрос № 1920

Здравствуйте
как в Apache настроить работу с С++ те есть скрипты которые на PHP не тянут, нужно ускорить их работу.
написал на С++, а как подключить к Apache не знаю
Спасибо.



Вопрос отправлен: 30.09.2004, 00:23
Отправитель: allex (allexdav@mail.ru)

[Следующий вопрос >>] [Список вопросов]

Отвечает knick

Добрый день, allex!
Скомпилируйте их, назовите *.cgi и положите в директорию, где могут выполнсяться cgi-скрипты.

Ответ отправлен: 30.09.2004, 13:27
Отправитель: knick


 Вопрос № 1922

Здрысть, уважаемые эксперты!
Хочу воспользоваться функциями CryptoAPI при написании проги на C-sharp. Для удобства необходимо подключить заголовочный файл wincrypt.h. В С++ это делается простым инклудом, а вот в шарпе я подобной директивы не нашёл. Подскажите пожалуйста, как мне впихнуть в прогу wincrypt.h и достучаться до CryptoAPI. Заранее спасибо!



Вопрос отправлен: 30.09.2004, 08:36
Отправитель: Somebody

[Следующий вопрос >>] [Список вопросов]

Отвечает gAmUssA

Доброе время суток, Somebody!
Попробуй
using System.Security.Cryptography

Ответ отправлен: 30.09.2004, 17:55
Отправитель: gAmUssA


 Вопрос № 1923

Уважаемый эксперт, у меня такой вопрос: я программирую на Visual C++ 6.0, так вот, можно ли в 32-х разрядном консольном приложении обратиться к видеобуферу в текстовом режиме (прочитать из него данные (символ и его атрибуты) или записать) на прямую, без использования API функций (конечно возможно придется использвать встроенный ассемблер, но это меня не смущает), мне бы работающий примерчик с коментариями.
Заранее спасибо.



Вопрос отправлен: 30.09.2004, 12:35
Отправитель: Андрей

[Следующий вопрос >>] [Список вопросов]

Отвечает Василевский Александр

Добрый день, Андрей!
Увы, даже используя ассемблер, обратиться напрямую к видеопамяти в Windows нельзя. Так или иначе придётся использовать функции API. Если Вы хотели увеличить скорость работы программы, отказавшись от функций API, то могу предложить следующий способ. Создайте в памяти виртуальный текстовый экран с размерами, как и у консольного окна. При помощи функций ReadConsoleOutput и WriteConsoleOutput можно передавать большие блоки для чтения и записи. Скорость при этом будет значительно выше, чем при побайтном вводе/выводе. При этом Вы можете обращаться напрямую к виртуальной видеопамяти.

Ответ отправлен: 30.09.2004, 12:48
Отправитель: Василевский Александр


Отвечает vitya

Доброе время суток, Андрей!
Нет нельзя.

Ответ отправлен: 30.09.2004, 15:45
Отправитель: vitya


Отвечает gAmUssA

Доброе время суток, Андрей!
Насколько мне известно, в Windows напрямую обратится к видеобуферу будет проблематично - она вообще не любит что бы её обходили. Попробуй поработать с DOS прерываниями. Попробуй поискать ответ в книге Фролова "Программирование видеоадаптеров"Грузите апельсины бочками...

Ответ отправлен: 02.10.2004, 14:47
Отправитель: gAmUssA


 Вопрос № 1924

Уважаемые эксперты!
У меня компилятор BorlandC++forDOS Ver3.1 не понимает русский язык, вместо русских букв - загогулины. В чем может быть проблема? У знакомых он же спокойно понимает русский. Сменить на более новую версию не могу. Спасибо.



Вопрос отправлен: 30.09.2004, 14:14
Отправитель: Booty (booty87@list.ru)

[Следующий вопрос >>] [Список вопросов]

Отвечает P@triot

Здравствуйте, Booty!
У меня была такая же проблема.
Попробуй запускать TC3 из FARa, если не поможет, то можешь попробовать установить XP Tweaker, там есть вкладка "Устранение проблем", поставь галочку в пункте использовать другую кодировку в DOS приложениях.


Ответ отправлен: 30.09.2004, 14:52
Отправитель: P@triot


Отвечает gAmUssA

Добрый день, Booty!
Напиши мне на мыло biwen@yandex.ru и я вышлю тебе руководство.

Ответ отправлен: 30.09.2004, 17:22
Отправитель: gAmUssA


 Вопрос № 1925

hello!
скажите, есть ли программы для правильного форматирования с++ исходников?
(руками - сам знаю что можно, хочу прогу!)
например программа, в ней 2 цикла, один вложен в другой;
написаны без отступов.
я запускаю программу, открываю этот исходник
и прога выдаёт результат: тот же исходник, но
вложенный цикл сделан с отступом.
ну, что посоветуете?



Вопрос отправлен: 30.09.2004, 15:35
Отправитель: soflot (soflot@ukr.net)

[Следующий вопрос >>] [Список вопросов]

Отвечает gAmUssA

Здравствуйте, soflot!
Я посоветовал бы использывать "правильный редактор" - на мой взгляд - Visual Studio .NET. Очень мощьный IDE. Также попробуй прогу Public Source (по моему так она называется).

Ответ отправлен: 30.09.2004, 17:21
Отправитель: gAmUssA



Форма отправки вопроса

Внимание!
Мы рекомендуем открывать рассылку в программе Internet Explorer 5.0+ или отправлять вопросы с сайта по адресу: http://rusfaq.ru/cgi-bin/Message.cgi.

(C) 2002-2003 Команда RusFAQ.ru.

 Персональные данные

Ваше имя:

Ваш e-mail:

Опубликовать мой e-mail в рассылке


 Вопрос и дополнение

Ваш вопрос:


Приложение (если необходимо):


Получить ответов:


 Выбор рассылки

Программисту
Assembler (23)
C / C++ (16)
Perl (7)
Builder / Delphi (14)
Pascal (20)
Basic / VBA (7)
Java / JavaScript (6)
PHP (17)
Криптография (7)
WinAPI (13)
Радиоэлектроника (15)
Пользователю
Windows 95/98/Me (48)
Windows NT/2000/XP (65)
"Железо" (41)
Поиск информации (20)
Администратору
Windows NT/2000/XP (44)
Linux / Unix (19)
Юристу
Гражданское право (8)
Семейное право (5)
Трудовое право (7)
КоАП (5)

Отправить вопрос всем экспертам выбранной рассылки.




Задать вопрос | Регистрация эксперта | Поиск в базе | Чат | Форумы | Новости
Проект экспертов RusFAQ.ru | Фотоальбом | Virus.RusFAQ.ru | Администрирование


hotlog_js="1.0";hotlog_d=document; hotlog_n=navigator;hotlog_rn=Math.random(); hotlog_n_n=(hotlog_n.appName.substring(0,3)=="Mic")?0:1; hotlog_r=""+hotlog_rn+"&s=25513&im=127&r="+escape(hotlog_d.referrer)+"&pg="+ escape(window.location.href); hotlog_d.cookie="hotlog=1"; hotlog_r+="&c="+(hotlog_d.cookie?"Y":"N"); hotlog_d.cookie="hotlog=1; expires=Thu, 01-Jan-70 00:00:01 GMT" hotlog_js="1.1";hotlog_r+="&j="+(navigator.javaEnabled()?"Y":"N") hotlog_js="1.2";hotlog_s=screen; hotlog_r+="&wh="+hotlog_s.width+'x'+hotlog_s.height+"&px="+((hotlog_n_n==0)? hotlog_s.colorDepth:hotlog_s.pixelDepth) hotlog_js="1.3" hotlog_r+="&js="+hotlog_js; hotlog_d.write("HotLog") Яндекс цитирования
© 2001-2004 Россия, Москва. Идея, дизайн, программирование: Калашников О.А. ICQ: 68951340
При перепечатке материалов ссылка на данный сайт обязательна!

http://subscribe.ru/
http://subscribe.ru/feedback/
Подписан адрес:
Код этой рассылки: comp.soft.prog.cplus
Отписаться

В избранное