Форум программистов, компьютерный форум CyberForum.ru

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

Восстановить пароль Регистрация
 
CHELOVEKPAUK
 Аватар для CHELOVEKPAUK
13 / 3 / 2
Регистрация: 01.08.2013
Сообщений: 332
Записей в блоге: 1
14.04.2014, 17:47     Выделение динамической памяти под массив из класса #1
Допустим, есть class c, и он включает в себя char-массив a:

C++
1
2
3
4
5
6
7
8
class c
{
private:
char a[50];
public:
c();
c(char* a);
}
Как динамически выделить память для массива во втором конструкторе? Если написать a = new char[50], то он пишет, что выражение должно быть допустимым для изменения левосторонним значением. Почему так, и как это правильно сделать? Подскажите пожалуйста.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
14.04.2014, 17:47     Выделение динамической памяти под массив из класса
Посмотрите здесь:

C++ Двумерный массив в динамической памяти как поле класса
динамическое выделение памяти под объект класса C++
Выделение памяти под массив C++
Выделение динамической памяти под массив структур C++
Выделение памяти под двумерный массив С++ C++
C++ Выделение памяти под двумерный массив
Выделение памяти под шаблон класса C++
C++ Выделение памяти под массив структур

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
newbie666
Заблокирован
14.04.2014, 17:56     Выделение динамической памяти под массив из класса #2
ты объявил этот массив как статический, переделать его в динамический нельзя
Кудаив
328 / 405 / 24
Регистрация: 27.05.2012
Сообщений: 1,162
Завершенные тесты: 2
14.04.2014, 18:18     Выделение динамической памяти под массив из класса #3
или слегка поменять логику - всегда выделять память для массива динамически
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#include <cstring>
 
class c
{
private:
   char* _a;
public:
   c();
   c(const char* a)
   {
       _a = new char[strlen(a) + 1];
       strcpy(_a, a);
   }
   ~c(){ delete[] _a; }
};
Yandex
Объявления
14.04.2014, 18:18     Выделение динамической памяти под массив из класса
Ответ Создать тему
Опции темы

Текущее время: 13:46. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru