|
Таблица переходов вместо Switch, Keil Си |
|
|
|
Apr 7 2010, 04:07
|

фанат дивана
     
Группа: Свой
Сообщений: 3 387
Регистрация: 9-08-07
Из: Уфа
Пользователь №: 29 684

|
Цитата(dxp @ Apr 7 2010, 10:06)  Для new надо свой быстрый и не подверженный фрагментации менеджер памяти сделать. Если только для вышеописанных целей, то это будет еще больше накладных. А вообще такой мененжер памяти местами очень полезен. Если new будет использоваться только как замена глобальным объектам, то фрагментация ему не грозит, ибо будет только new, без delete. Но если Цитата Надо будет сделать, как руки дойдут. , то я только за  ЗЫ. Пока прикрутил bget, вроде работает.
--------------------
Если бы я знал, что такое электричество...
|
|
|
|
|
Apr 7 2010, 06:24
|

Adept
     
Группа: Свой
Сообщений: 3 469
Регистрация: 6-12-04
Из: Novosibirsk
Пользователь №: 1 343

|
Цитата(AHTOXA @ Apr 7 2010, 11:22)  Если new будет использоваться только как замена глобальным объектам, то фрагментация ему не грозит, ибо будет только new, без delete. А тогда смысла нет в динамическом управлении памятью. Смысл ведь в том, чтобы юзать одну и ту же память под разные цели в разные моменты времени. Как стек, только со временем жизни объектов, определяемым пользователем. А если без delete, то тот вариант во статиками внутри получается функционально почти такой же, а по накладным лучше.
--------------------
«Отыщи всему начало, и ты многое поймёшь» К. Прутков
|
|
|
|
|
Apr 7 2010, 07:51
|

фанат дивана
     
Группа: Свой
Сообщений: 3 387
Регистрация: 9-08-07
Из: Уфа
Пользователь №: 29 684

|
Цитата(dxp @ Apr 7 2010, 12:39)  А тогда смысла нет в динамическом управлении памятью. Смысл ведь в том, чтобы юзать одну и ту же память под разные цели в разные моменты времени. Смысл в том, что объекты создаются в нужном мне порядке, я управляю этим. Насчёт увеличения накладных - это вряд ли. ну разве что при создании объекта. При работе - простейшая проверка на null и возврат. Естественно, если будут нормальные new/delete, то лучше использовать их.
--------------------
Если бы я знал, что такое электричество...
|
|
|
|
|
Apr 7 2010, 13:44
|

фанат дивана
     
Группа: Свой
Сообщений: 3 387
Регистрация: 9-08-07
Из: Уфа
Пользователь №: 29 684

|
А, это конечно. Просто наличие new позволяет даже без всяких синглетонов делать Код if (!uart) uart = new uart_t; , а в случае глобальных объектов я этого лишён. Статики (спасибо за идею) позволяют обойти это ограничение. Консенсус?
--------------------
Если бы я знал, что такое электричество...
|
|
|
|
|
Apr 8 2010, 03:28
|

Adept
     
Группа: Свой
Сообщений: 3 469
Регистрация: 6-12-04
Из: Novosibirsk
Пользователь №: 1 343

|
Цитата(AHTOXA @ Apr 7 2010, 20:59)  Код if (!uart) uart = new uart_t; Да, это удобная штука (а местами незаменимая - сейчас приходится с GUI колупаться, очень не хватает простого, легкого и безопасного менеджера памяти. И для STL'ных вещей оно тоже очень нужно, там, правда, придется аллокаторы переписать). Надо будет поставить приоритетной в очередь факультативных задач. Цитата(AHTOXA @ Apr 7 2010, 20:59)  Консенсус?  Адназначна.
--------------------
«Отыщи всему начало, и ты многое поймёшь» К. Прутков
|
|
|
|
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0
|
|
|