Модераторы: Daevaorn
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Приоритет типов.. 
V
    Опции темы
PuLN
  Дата 3.9.2006, 17:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 211
Регистрация: 1.8.2006

Репутация: 1
Всего: 2



есть ли разница,каким по счету указывать типа данных при инициализации?
есть ли значение для освобождения памяти?
--------------------
*** хуже нет,когда не ответит тот,кто знает....*** наша жизнь-желтая стрела,подхваченная ветром времени(© PuLN)   
PM MAIL   Вверх
Greeen
Дата 3.9.2006, 17:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 710
Регистрация: 13.8.2006
Где: Петербург

Репутация: 7
Всего: 18



PuLN, нифига себе сказал!!  smile  поясни вопрос?  smile 


--------------------
Подпись больше не нужна
PM MAIL ICQ Skype   Вверх
PuLN
Дата 3.9.2006, 17:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 211
Регистрация: 1.8.2006

Репутация: 1
Всего: 2



ну вот чего то взбрело мне в голову...
вот смотри,объявляешь ты переменные в какой-нибудь прогаммке простенькой,там
все подряд,напимер:

int c;
char mass[10]={1,2,3,4};
double sum;

как под них освобождается память?
подряд?или сращу для всех?

Это сообщение отредактировал(а) PuLN - 3.9.2006, 17:32
--------------------
*** хуже нет,когда не ответит тот,кто знает....*** наша жизнь-желтая стрела,подхваченная ветром времени(© PuLN)   
PM MAIL   Вверх
En_t_end
Дата 3.9.2006, 17:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 2074
Регистрация: 4.12.2004

Репутация: 1
Всего: 20



PuLN, 
в стековом порядке.
PM MAIL ICQ Skype GTalk Jabber   Вверх
PuLN
Дата 3.9.2006, 17:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 211
Регистрация: 1.8.2006

Репутация: 1
Всего: 2



значит,есть разница,какой по порядку сделана инициализация....интересно.. smile 
--------------------
*** хуже нет,когда не ответит тот,кто знает....*** наша жизнь-желтая стрела,подхваченная ветром времени(© PuLN)   
PM MAIL   Вверх
Daevaorn
Дата 3.9.2006, 17:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 2155
Регистрация: 29.11.2004
Где: Москва

Репутация: 51
Всего: 70



PuLN, разницы нет.

Добавлено @ 18:03 
Для не встроенных типов вызовутся деструкторы, а потом одной asm операцией изменится указатель вершины стека.
PM MAIL WWW   Вверх
MAKCim
Дата 3.9.2006, 18:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Воін дZэна
****


Профиль
Группа: Экс. модератор
Сообщений: 5644
Регистрация: 10.12.2005
Где: Менск, РБ

Репутация: 52
Всего: 207



Цитата

как под них освобождается память?
подряд?или сращу для всех?

в данном случае, имхо, сразу для всех (изменяется указатель стека на сумарный размер всех данных)
если бы были объекты не POD типа
то вызывались бы деструкторы в порядке, обратном их определению


--------------------
Ах, у елі, ах, у ёлкі, ах, у елі злыя волкі ©

PM MAIL   Вверх
PuLN
Дата 3.9.2006, 18:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 211
Регистрация: 1.8.2006

Репутация: 1
Всего: 2



ага,ясно,спасибо!
--------------------
*** хуже нет,когда не ответит тот,кто знает....*** наша жизнь-желтая стрела,подхваченная ветром времени(© PuLN)   
PM MAIL   Вверх
rMaveric
Дата 3.9.2006, 19:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 375
Регистрация: 18.7.2003

Репутация: нет
Всего: 6



Зависит от компилятора и опций оптимизации.

Но желательно объявлять переменные в порядке уменьшения размера занимаемой ими памяти. Тоесть в твоем примере лучше объявить так: 

Код

char mass[10]={1,2,3,4};
double sum;
int c;


Особенно сильно это играет роль в структурах. Но если не ошибаюсь большинство оптимизаторов умеют распределять в памяти более-менее грамотно и не создается больших дыр, но всеравно лучше на всяк случай предерживаться правил, да и зачастую оптимизацией лучше пренебречь автоматической в пользу ручной smile


--------------------
Моя благодарность не будет иметь границ. в определенных рамках конечно ;)
---
Веду IT блог
PM MAIL WWW ICQ   Вверх
NextAlex
Дата 4.9.2006, 10:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 121
Регистрация: 10.8.2005
Где: Украина, г. Одесс а

Репутация: 2
Всего: 3



Все переменные всегда удаляются в порядке обратном их созданию, т.е. если переменные объявлялись
Код

int c;
char mass[10]={1,2,3,4};
double sum;

то удаляться они будут вот так
  • sum
  • mass
  • c
и только так.
--------------------
Говорила мама: "Учись играть на скрипке". Не хотел носить ноты - будешь носить пианино ...
PM MAIL ICQ   Вверх
PuLN
Дата 4.9.2006, 13:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 211
Регистрация: 1.8.2006

Репутация: 1
Всего: 2



ну да,в стековом...первый зашел,последний вышел..
--------------------
*** хуже нет,когда не ответит тот,кто знает....*** наша жизнь-желтая стрела,подхваченная ветром времени(© PuLN)   
PM MAIL   Вверх
Sceptik
Дата 4.9.2006, 15:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 36
Регистрация: 29.8.2006
Где: Екатеринбург

Репутация: нет
Всего: нет



PuLN, читай про выравнивание в структруах (классах). При простом Объявлении разницы нет.
PM MAIL ICQ   Вверх
knut
Дата 5.9.2006, 09:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 588
Регистрация: 7.2.2006

Репутация: нет
Всего: нет



PuLN, 
Цитата

ну да,в стековом...первый зашел,последний вышел.. 

ето смотря как стек организован .

Добавлено @ 09:45 
извиняюсь за (ето) это 


--------------------
Цитата

Многие вещи нам непонятны не оттого, что наши понятия слабы, а оттого, что данные вещи не входят в круг наших понятий.
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С++:Общие вопросы"
Earnest Daevaorn

Добро пожаловать!

  • Черновик стандарта C++ (за октябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика(4.4мб).
  • Черновик стандарта C (за сентябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика (3.4мб).
  • Прежде чем задать вопрос, прочтите это и/или это!
  • Здесь хранится весь мировой запас ссылок на документы, связанные с C++ :)
  • Не брезгуйте пользоваться тегами [code=cpp][/code].
  • Пожалуйста, не просите написать за вас программы в этом разделе - для этого существует "Центр Помощи".
  • C++ FAQ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0517 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.