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

Проверка освобождения памяти (new, delete) - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Шаблоны функций. Можно ли задать шаблон мэйна http://www.cyberforum.ru/cpp-beginners/thread1526733.html
Понятно что нельзя. В этом чудном участке кода, в мэйн вводимые данные кастятся к инту. Как это можно обойти?#include<iostream> using namespace std; template<typename T> void...
C++ Исправить код сортировки выбором Реализуйте алгоритм на языке Си, добавив в программу подсчет количества сравнений и перестановок, проведенных алгоритмом. Выполните полученную программу на случайных массивах размерности 100, 1000,... http://www.cyberforum.ru/cpp-beginners/thread1526727.html
C++ Разное имя переменной в цикле
Привет Всем. У меня возник такой вопрос. Во вложенных циклах мне необходимо инициализировать переменные, которые будут отличаться последними цифрами. То есть: for (int var1 = 0; var1 < 10;...
Fread неправильно считывает файл C++
У меня есть файл вот его скрин в hex редакторе я пытаюсь считать первые 8 байт, вот код: fread(&formCk.ckID,4, 1, file_in); //formCk.ckID переменная типа char считывается первые 4 байта (46 4f...
C++ По заданному количеству делителей числа требуется найти само это число http://www.cyberforum.ru/cpp-beginners/thread1526556.html
По заданному количеству делителей числа требуется найти само это число. Входные данные Во входном файле INPUT.TXT записано количество делителей D некоторого натурального числа N (1 <= D...
C++ Ошибка в __asm вставке class Updater{ public: DWORD baseAddress; }; class System { public: подробнее

Показать сообщение отдельно
AlexVRud
444 / 155 / 40
Регистрация: 04.07.2014
Сообщений: 444
08.09.2015, 14:14
Цитата Сообщение от sion5 Посмотреть сообщение
Про умные указатели и memory sanitizer тоже обязательно почитаю для развития.
Про умные указатели ты читай прямо сейчас. Они для того и создавались, что бы удалять объекты автоматически.
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
31
32
33
34
35
36
37
38
39
#include <iostream>
#include <memory>
 
class Foo {
public:
    Foo() {
        std::cout << "Foo: constructor\n";
    };
    ~Foo() {
        std::cout << "Foo: destructor\n";
    };
};
 
class Bar {
public:
    Bar() : _foo(std::make_shared<Foo>())
    {
        std::cout << "Bar: default constructor\n";
    };
    Bar(std::shared_ptr<Foo> foo) : _foo(foo)
    {
        std::cout << "Bar: constructor(*Foo)\n";
    };
    ~Bar() {
        std::cout << "Bar: destructor\n";
    };
protected:
    std::shared_ptr<Foo> _foo;
};
 
 
int main() {
  std::shared_ptr<Bar> bar_1 = std::make_shared<Bar>();
 
  std::shared_ptr<Foo> foo_2 = std::make_shared<Foo>();
  std::shared_ptr<Bar> bar_2 = std::make_shared<Bar>(foo_2);
 
  return 0;
}
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru