Форум программистов, компьютерный форум, киберфорум
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Ultrator
11 / 7 / 1
Регистрация: 28.04.2009
Сообщений: 219
#1

Вопрпос про const: в какой области памяти они находятся, и где это объявлять ? - C++

28.04.2009, 15:08. Просмотров 732. Ответов 3
Метки нет (Все метки)

Приветствую.
У меня вот такая задача - завести массив констант, причём он используется ТОЛЬКО одной функцией (не main), и поэтому, объявить (и инициализировать) хотелось тоже внутри этой функции.
Так я и сделал:
C++
1
2
3
4
5
f(){
  const unsigned int h[31]={
  //здесь - значения (через запятую)
  };
}
Но! Не могу понять, ГДЕ компилятор будет его располагать: в сегменте данных или в стеке, как и все локальные переменные?
(Таблица довольно большая, при каждом вызове f гонять массив констант в стек/из стека - не хочется.)
Может, вместо const написать static ?
Искал, но в учебниках ничего об этом нет.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
28.04.2009, 15:08
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Вопрпос про const: в какой области памяти они находятся, и где это объявлять ? (C++):

Создать матрицу 7х7, найти максимальный и минимальный элементы, и поменять строки где они находятся - C++
Нужно создать масив 7 на 7 найти максимальный и минимальный елемент и поменять строки где находятся эти елементы Вот собственно написал,...

Даны названия 20 стран и частей света, где они находятся. Определить, есть ли среди них страны Азии и Африки - C++
Даны названия 20 стран и частей света, в которых они находятся. Определить, есть ли среди них страны, находящиеся в Африке или в Азии....

Что это bool operator== (const CLASS&) const; - C++
Что это? class CLASS { public: bool operator== (const CLASS&) const; ...

В какой области памяти хранится указатель (сама переменная, которая хранит адрес)? - C++
Привет! В общем у меня возник небольшой вопрос :) Если мы объявляем указатель, выделяем ему память, то память выделяется в куче, а адрес...

Архивировать при помощи WinRAR файлы в ту же папку, где они находятся - CMD/BAT
Подскажите пожалуйста. Как создать bat который архивировал файлы в туже папку где они находятся.

Составить программу и схема-блок для четырех точек и определить в какой четверти они находятся - Pascal
Задача такова - нужно составить программу и схема-блок для четырех точек и определить в какой четверти они находятся. Алгоритм чтобы был...

3
ISergey
Maniac
Эксперт С++
1396 / 907 / 56
Регистрация: 02.01.2009
Сообщений: 2,712
Записей в блоге: 1
28.04.2009, 15:18 #2
Цитата Сообщение от Ultrator Посмотреть сообщение
ГДЕ компилятор будет его располагать
должоно поместить в неизменяемую статическую область памяти
0
CheshireCat
Эксперт С++
2896 / 1245 / 78
Регистрация: 27.05.2008
Сообщений: 3,411
28.04.2009, 15:24 #3
Для распространенных виндовых компиляторов - в сегменте инициализированных константных данных, .rdata. И никуда "гонять" его не будет.
1
Ultrator
11 / 7 / 1
Регистрация: 28.04.2009
Сообщений: 219
28.04.2009, 15:33  [ТС] #4
должоно поместить в неизменяемую статическую область памяти
в сегменте инициализированных константных данных
Ура...
0
28.04.2009, 15:33
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
28.04.2009, 15:33
Привет! Вот еще темы с ответами:

Где можно про это прочитать? - C# WPF
Вообще, есть несколько проблем: 1. Как убрать контур у фигуры на определённом участке? 2. Как сменить ВСЕ цвета у элементов управление?...

Расширения разметки. Скиньте ссылку, где подробно про это написано - C# WPF
Прочитал 2 книги Натан и Макдональд и msdn.Ничего практически,не понял по данному вопросу.

Для следующих значений данных определить типы данных, указать какой объем памяти они занимают - Turbo Pascal
Задание 1.Для следующих значений данных определить типы данных, указать какой объем памяти они занимают, ввести их в память компьютера как...

Ошибка: Binding 'const Ship' to reference of type 'Ship&' discard qualifiers. Не пойму, где теряется const - C++ Qt
есть public метод класса с квалификатором const тип _ships - QMultiMap QMultiMap имеет унаследованные методы values(),...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.