Разработка, производство и продажа радиоэлектронной аппаратуры
|
Карта сайта
|
Пишите нам
|
В избранное
Требуется программист в Зеленограде
- обработка данных с датчиков; ColdFire; 40 тыс.
e-mail:
jobsmp@pochta.ru
Телесистемы
|
Электроника
|
Конференция «Микроконтроллеры и их применение»
Ответ: 1, 2, 4 - согласен. На счет три,
Отправлено
Artem-1.6E-19
26 августа 2007 г. 17:39
В ответ на:
1) перегрузив его ты будешь ВЫНУЖДЕН использовать new , так как контроля над использованием компилятором стека у тебя нет. 2) теряется вся ясность 3) в принципе такие массивы обычно не нужны, что покрывает недостаток от их отказа 4) программисты на С++ сейчас сдают позиции, C# требуется, насколько мне известно, с памятью там всё сильно иначе
отправлено <font color=gray>LOT#</font> 26 августа 2007 г. 17:21
К примеру, разбор, ну к примеру modbus может быть весьма удобно выделить память, равную длинне пришедшего сообщения.
Составить ответ
|
Вернуться на конференцию
Ответы
не согласен - в этом случае malloc/new совершенно не противопоказан, поскольку память ты освободишь в той же ф-ции. Если ты возразишь, что можешь не успеть разобрать пакет до освобождения и возникнут проблемы выделения памяти - точно такие же проблемы будут и в случае VLA.
—
LOT#
(26.08.2007 17:49:50
212.58.192.14
,
пустое
)
Ответ: А сколько времени займет malloc? И кто даст гарантию что он реентерабелен?
—
Artem-1.6E-19
(26.08.2007 17:55:33
91.124.241.44
,
пустое
)
займет столько же времени, сколько и VLA при грамотной реализации. Тём, не придирайся, тебе эти наносекунды в реале не важны. Я думаю VLA не поддержан в С++ по другим мотивам - в частности по причине усложнения контроля и обработки исключений
—
LOT#
(26.08.2007 18:00:8
212.58.192.14
,
пустое
)
Ответ: Я не придираюсь. Время на malloc может быть любым в принципе.
—
Artem-1.6E-19
(26.08.2007 18:07:18
91.124.241.44
, 724 байт)
Отправка ответа
Имя*:
Пароль:
E-mail:
Тема*:
Сообщение:
Ссылка на URL:
URL изображения:
если вы незарегистрированный на форуме пользователь, то
для успешного добавления сообщения заполните поле, как указано ниже:
введите число 34:
Перейти к списку ответов
|
Конференция
|
Раздел "Электроника"
|
Главная страница
|
Карта сайта
Web
telesys.ru