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

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

Восстановить пароль Регистрация
Другие темы раздела
C++ Получить три копии исходного файла в новой папке http://www.cyberforum.ru/cpp-beginners/thread1231578.html
Готовой программы не нашёл, решил обратиться к гуру. Понимаю, что задача проста до нельзя, но сам не спец. Люди, набросайте код если есть опыт и время. Нужна простенькая прога. Есть папка 1 «ИСХОДНАЯ», в ней 1 файл «пример.txt» Есть папка 2 «НАЗНАЧЕНИЕ» Есть текстовый файл pattern.txt с названиями (будущих файлов). Например: (каждое наименование с новой строки) файл1.txt...
C++ Путешествующий файл: абсолютный и относительный путь к файлу Добрый день. Наверно совсем уж нубский вопрос. У меня в коде идёт чтение файла. Допустим реад и ссылка на файл. Файл лежит в папке с самим проектом. Тобишь там C:\Тратата\трутуту\НАШ ПРОЕКТ\Туцтуц.txt Затем я посылаю готовый проект другу. Вместе с этим текстовым файлом. И естественно у него выскочит ошибка. Потому что он допустим положит каталог так C:\СубЗИро\НАШ... http://www.cyberforum.ru/cpp-beginners/thread1231568.html
Работа с ofstream, попытка записи в поток после его закрытия C++
Добрый день, чем чревата такая вещь ofstream str; str.open("asdg"); //что то записали str.close(); // снова пишем в поток str и после записи делаем str.flush()
C++ Подключение glut к Code::Blocks
Очень много проблем возникло с этим моментом. Хотя искал в сети решения. Во-первых сильное ли отношение имеет glut к OpenGL? И в чём особенность? Вот скриншоты и я запутался, это два разных вида glut? В совсем же разном виде сделаны. В-третьих суть в том, что надо по идее скинуть файлы инклюдов и lib в папки соответствующие, то ли туда, то ли сюда (скрины приложил 2 разных места MinGW)....
C++ Калькулятор на двухсвязном списке + стек (Сделать обратную польскую запись) http://www.cyberforum.ru/cpp-beginners/thread1231524.html
помогите сделать обратную польскую запись чтото на подобе калькулятора Чтобы розрезнял скобки
C++ Ошибка ли? (заголовочные файлы) так кхм какбы понятнее спросить... вобщем если я пишу програму восновном из класов и она у меня имеет вид: //Filename: inputclass.h <<<< 1 #ifndef _INPUTCLASS_H_ #define _INPUTCLASS_H_ //////////////////////////////////////////////////////////////////////////////// // Class name: InputClass //==================================================// подробнее

Показать сообщение отдельно
lest_
0 / 0 / 0
Регистрация: 28.11.2013
Сообщений: 94
21.07.2014, 18:51     Как создать объект класса в динамической памяти?
привет. я так понял, можно создать объект в динамической области памяти. либо просто создать объект обычным способом, но чтобы его данные-члены были указателями на переменные в динамической памяти. я написал 2 варианта:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
// Создать объект в динамической памяти
#include <iostream>
using namespace std;
 
class SimpleCat
{
public:
    SimpleCat()
    {
        cout << "In the Constructor" << endl;
        itsAge = 1;
    }
    ~SimpleCat() { cout << "DESTRUCTOR" << endl; }
private:
    int itsAge;
};
 
int main()
{
    {
        SimpleCat* p = new SimpleCat;
        delete p;
        p = 0;  
    }
    system("pause");                
    return 0;     
}
Результат:
In the Constructor
DESTRUCTOR
Для продолжения нажмите любую клавишу...

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
// В качестве переменной-члена выступает указатель на переменную в динамической памяти
#include <iostream>
using namespace std;
 
class SimpleCat
{
public:
    SimpleCat()
    {
        cout << "In the Constructor" << endl;
        pAge = new int(2);
    }
    ~SimpleCat() 
    {
        cout << "DESTRUCTOR" << endl;
        delete pAge;
        pAge = 0;
    }
private:
    int* pAge;
};
 
int main()
{
    {
        SimpleCat Frisky;       
    }
    system("pause");                
    return 0;     
}
Результат тот же самый.
я хотел спросит: правильно ли я написал? и если правильно, то в чём вообще разница в этих способах? как надо в реальной программе писать?
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 11:31. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru