![]() |
|
Модераторы: Daevaorn |
![]()
|
|
| GrayCardinal |
|
|||
|
Фигасе ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3039 Регистрация: 9.11.2003 Репутация: 2 Всего: 58 |
Это откуда ? |
|||
|
||||
| zkv |
|
|||
![]() ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2133 Регистрация: 23.7.2006 Где: Санкт-Петербург Репутация: 26 Всего: 92 |
||||
|
||||
| GrayCardinal |
|
|||
|
Фигасе ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3039 Регистрация: 9.11.2003 Репутация: 2 Всего: 58 |
zkv,
Вот это для меня прописные истины Добавлено через 1 минуту и 11 секунд
|
|||
|
||||
| zkv |
|
|||
![]() ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2133 Регистрация: 23.7.2006 Где: Санкт-Петербург Репутация: 26 Всего: 92 |
||||
|
||||
| GrayCardinal |
|
|||
|
Фигасе ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3039 Регистрация: 9.11.2003 Репутация: 2 Всего: 58 |
zkv,
Уел таки |
|||
|
||||
| archimed7592 |
|
|||
![]() Архимед ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2531 Регистрация: 12.6.2004 Где: Moscow Репутация: 58 Всего: 93 |
-------------------- If you have an apple and I have an apple and we exchange apples then you and I will still each have one apple. But if you have an idea and I have an idea and we exchange these ideas, then each of us will have two ideas. © George Bernard Shaw |
|||
|
||||
| GrayCardinal |
|
|||
|
Фигасе ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3039 Регистрация: 9.11.2003 Репутация: 2 Всего: 58 |
archimed7592,
Может линк есть ? А то как-то неубедительно |
|||
|
||||
| archimed7592 |
|
|||
![]() Архимед ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2531 Регистрация: 12.6.2004 Где: Moscow Репутация: 58 Всего: 93 |
35 правил, оч известная книга.
Добавлено через 38 секунд Номер главы не скажу, ибо сейчас у меня её под рукой нет. -------------------- If you have an apple and I have an apple and we exchange apples then you and I will still each have one apple. But if you have an idea and I have an idea and we exchange these ideas, then each of us will have two ideas. © George Bernard Shaw |
|||
|
||||
| MAKCim |
|
|||
![]() Воін дZэна ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5644 Регистрация: 10.12.2005 Где: Менск, РБ Репутация: 52 Всего: 207 |
archimed7592,
zkv, можно подробнее об этом я ничего такого не читал единственное для меня объяснение - это кэширование, т. е чем дальше определение переменной от точки использования, тем больше вероятность того, что данные, которые соответствуют переменной, не будут находится в кэше CPU Это сообщение отредактировал(а) MAKCim - 7.11.2007, 11:44 -------------------- Ах, у елі, ах, у ёлкі, ах, у елі злыя волкі © |
|||
|
||||
| archimed7592 |
|
|||
![]() Архимед ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2531 Регистрация: 12.6.2004 Где: Moscow Репутация: 58 Всего: 93 |
MAKCim, преждевременная оптимизация - корень всех зол
Кэш тут не при чём. Во-первых, сразу видно предназначение переменной, когда читаешь. Во-вторых, сужается её scope. В-третьих, раз уж мы заговорили про оптимизацию - компилятор всё равно выделит место в стеке под все нужные переменные в начале ф-ции, но, ему будет проще оптимизировать, когда он будет знать, что данная переменная фигурирует здесь(в данном scope) и не фигурирует нигде больше. -------------------- If you have an apple and I have an apple and we exchange apples then you and I will still each have one apple. But if you have an idea and I have an idea and we exchange these ideas, then each of us will have two ideas. © George Bernard Shaw |
|||
|
||||
| zkv |
|
|||
![]() ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2133 Регистрация: 23.7.2006 Где: Санкт-Петербург Репутация: 26 Всего: 92 |
MAKCim, ты рассматриваешь все только с точки зрения оптимизации
принцип совета тот же, что и в совете избегать глобальных переменных по возможности. ведь можно отказаться от локальных переменных вообще, использовать только глобальные (забудем на время где там что храниться будет, смотрим только с точки зрения прозрачности кода) - нелегко будет разбирать такую программу. Это утрированный пример, но тенденция понятна, наверное? |
|||
|
||||
| SaDFromSpb |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 263 Регистрация: 5.4.2006 Где: Санкт-Петербург Репутация: 3 Всего: 3 |
Вот скажи, а ядро Линуха до сих пор на си пишется? Там, типа, ООП не нужно? Совершенно без иронии, просто интересно. А ссылка с этими истинами, у меня не открывается что-то... -------------------- "За исключением части, касающейся потоков, библиотека Loki написана на стандартном языке С++. Увы, это означает, что многие современные компиляторы не смогут работать с ней в полном объеме." (А. Александреску. Modern C++ design. 2001) |
|||
|
||||
| MAKCim |
|
||||||
![]() Воін дZэна ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5644 Регистрация: 10.12.2005 Где: Менск, РБ Репутация: 52 Всего: 207 |
как это соотносится с этим
? EBP не меняется в пределах функции, так что, имхо, все равно, откуда обращаться к локальной переменной аналогия с глобальными переменными не уместна, имхо тогда уж и "разбрасывание" переменных по всему телу функции надо исключать немного все же причем Добавлено через 3 минуты и 44 секунды
пишется на С ООП - это синтаксический сахар в синтаксисе ЯВУ в общем случае он усложняет выходной код (соответственно, снижая его производительность), что неприемлемо для разработки ядра классы вполне заменяются структурами, методы - функциями, наследование - агрегированием, полиморфизм - ничем в виду его ненужности -------------------- Ах, у елі, ах, у ёлкі, ах, у елі злыя волкі © |
||||||
|
|||||||
| archimed7592 |
|
|||
![]() Архимед ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2531 Регистрация: 12.6.2004 Где: Moscow Репутация: 58 Всего: 93 |
К примеру, если scope ограничен, он может вообще воспользоваться регистрами. Потом возьми умные объекты. mutex к примеру. Если ты сделаешь его в начале ф-ции, то всё время работы ф-ции мьютекс будет залочен, если же заключить его в тот scope в котором он реально нужен, то повысится эффективность. -------------------- If you have an apple and I have an apple and we exchange apples then you and I will still each have one apple. But if you have an idea and I have an idea and we exchange these ideas, then each of us will have two ideas. © George Bernard Shaw |
|||
|
||||
| MAKCim |
|
|||
![]() Воін дZэна ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5644 Регистрация: 10.12.2005 Где: Менск, РБ Репутация: 52 Всего: 207 |
мы говорим о расположении локальных переменных а лочить можно где угодно -------------------- Ах, у елі, ах, у ёлкі, ах, у елі злыя волкі © |
|||
|
||||
![]()
|
| Правила форума "С++:Общие вопросы" | |
|
|
Добро пожаловать!
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C/C++: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |