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

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

Войти
Регистрация
Восстановить пароль
 
andrew_wk
0 / 0 / 0
Регистрация: 28.03.2014
Сообщений: 8
#1

Размещение класса в динамической памяти - C++

27.04.2014, 18:21. Просмотров 490. Ответов 2
Метки нет (Все метки)

Добрый день! Интересует такой вопрос, который я никак не пойму:

Есть класс class Container, который создается в динамической памяти. c = new Container();
В классе содержатся поля, являющиеся экземплярами других классов:
C++
1
2
3
4
5
6
class Container
{
private:
 
BigContainer m_bigData;
}
Класс BigData может быть большим по размеру. Интересует вот что - если класс Container создан в динамической памяти, то и данные m_bigData находятся в ней? Т.е в таком случае не следует опасаться переполнения стека, из-за того, что m_bigData будет велик для него, т.к m_bigData так же размещен в куче?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
27.04.2014, 18:21
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Размещение класса в динамической памяти (C++):

Объект класса в динамической памяти - C++
Привет. Вот листинг: #include <iostream> using namespace std; class SimpleCat { public: SimpleCat(int age, int weight) {...

Обращение к свойству класса в динамической памяти - C++
Здравствуйте! Возникла проблема с обращением к свойству класса, расположенному в динамической памяти. Пойду по порядку. Создаю вот...

Выделение динамической памяти под массив из класса - C++
Допустим, есть class c, и он включает в себя char-массив a: class c { private: char a; public: c(); c(char* a); }

Указатель,объект класса размещенный в динамической памяти - C++
Ребят,такой маленький нелепый вопрос. Как можно обратиться к объекту класса созданному в динамической памяти(через "new")?; В моей книге...

Как создать объект класса в динамической памяти? - C++
привет. я так понял, можно создать объект в динамической области памяти. либо просто создать объект обычным способом, но чтобы его...

Двумерный массив в динамической памяти как поле класса - C++
Здравствуйте! Вот так можно описать двумерный массив в дин.памяти. class nameClass { public: MapPlaceTp ** roomMap; ...

2
SHLAKBAUM
22 / 22 / 7
Регистрация: 29.09.2013
Сообщений: 51
27.04.2014, 18:25 #2
m_bigData также в динамической памяти. Динамическая память != стек, никак ты стек не переполнишь.
1
andrew_wk
0 / 0 / 0
Регистрация: 28.03.2014
Сообщений: 8
27.04.2014, 19:28  [ТС] #3
Да, действительно, что-то я сам не догадался проверить на overflow это:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
class B
{
public:
    double c[100000000];
};
 
class S
{
public:
    double x[10000000];
    B b;
};
 
 
int _tmain(int argc, _TCHAR* argv[])
{
    S *s = new S(); //Ok
 
    S c; //Overflow
    return 0;
}
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
27.04.2014, 19:28
Привет! Вот еще темы с ответами:

Утечка памяти при создании динамической переменной класса - C++
Никак не могу исправить проблему утечки памяти при создании динамической переменной класса class Ship { private: int maxHeight; ...

Утилизация класса (размещение класса в другом файле) - C++
Здравствуйте уважаемые пользователи данного форума,прошу Вас помочь в решение данной проблемы.Пожалуйста подскажите как утилизировать...

Размещение элементов в памяти - C++
Добрый день! Подскажите. может ли контейнер STL vector хранить значения типа char (wchar_t)? Если нет, то подскажите, как создать некую...

Размещение переменных в памяти - C++
пользуюсь Dev-C++, стало интересно, как компиляторы размещают даныые: последовательно, или как попало? предположим есть объявление int i;...


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

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

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