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

Можно ли удалить объект экземпляра класса из самого себя? - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Найти количество чисел в массиве типа char http://www.cyberforum.ru/cpp-beginners/thread1303976.html
задание полностью стоит следующее: в массиве типа char вывести только те слова, которые состоят из латинских букв и вывести количество чисел в массиве, если такие имеются. Числе, не цифр! #include<iostream> #include<string.h> #include <stdlib.h> using namespace std; int main() { char text;//ñòðîêà
C++ Удалить элементы главной диагонали Удалить элементы главной диагонали Почему не работает? for (i=0; i<n; i++) for (j=0; j<m-1; j++) if (i=j) for (i=j; i<n-1; i++) mas=mas; cout<<"our array\n"; http://www.cyberforum.ru/cpp-beginners/thread1303975.html
Создание, просмотр и удаление элементов списка, организованного по принципу LIFO C++
Что делать? Программа просит идентификатор true, false. #include "stdafx.h" #include <iostream> #include <process.h> #include <conio.h> using namespace std; //визначення перелічуваного типу користувача boolean enum boolean(true, false); //визначення шаблону елемента списку за допомогою типу struct struct stack{
Обработка двумерного массива: найти количество строк и номер столбца по условию C++
#include <iostream> #include <iomanip> using namespace std; const int N=20; const int M=20; int main() { double a;
C++ Подскажите.Как вывести N-ую строку или столбец из матрицы? http://www.cyberforum.ru/cpp-beginners/thread1303921.html
Подскажите.Как вывести N-ую строку или столбец из матрицы?
C++ Ошибка "stack around the variable 'n' was corrupted." Есть такая программа. Натуральные числа от 0 до n(a0-an) Необходимо найту сумму всех чисел кратных 5. Выдает ошибку stack around the variable 'n' was corrupted. Почему? #include <clocale> #include <cstdio> int main(){ setlocale(LC_ALL, "Russian"); int n, a, sum=0; printf("введите n"); подробнее

Показать сообщение отдельно
DrOffset
6416 / 3790 / 876
Регистрация: 30.01.2014
Сообщений: 6,575
19.11.2014, 20:09     Можно ли удалить объект экземпляра класса из самого себя?
Цитата Сообщение от -THE_MASTER666- Посмотреть сообщение
Что буквально имеется ввиду? Что значит делят рантайм?
Я про это рассказывал уж в одной из предыдущих твоих тем. С++ Runtime - это библиотека времени исполнения, в ней находится в том числе реализация стандартного С++ аллокатора. В VS они называются msvcr***, у каждой версии VS своя версия С++ runtime. Отсюда весь этот разнообразный набор пакетов ms redist.

Цитата Сообщение от -THE_MASTER666- Посмотреть сообщение
Я чёт не пойму, вот допустим я собрал DLL в VisualStudio2010 и что, я не смогу её подключить в собранном виде к проекту в VS2013?
Можешь. Но могут быть проблемы, о которых говорилось выше и в предыдущих твоих темах.

Цитата Сообщение от -THE_MASTER666- Посмотреть сообщение
Допустим в случае сборки VS и GCC уже будут проблемы?
Вообще я имел в виду разные версии одного и того же компилятора.
В случае GCC и VS, возникают гораздо более серьезные проблемы, т.к С++ ABI у них несовместимо, следовательно ты даже скомпилировать ничего не сможешь до тех пор, пока используешь интерфейсы в стиле С++ (но сможешь, если использовать С).

Добавлено через 3 минуты
Цитата Сообщение от -THE_MASTER666- Посмотреть сообщение
Ну вот допустим все DLL-ки для DirectX работают на любой студии.
Работают. Потому что написаны правильно. Ты объекты, которые выделяешь там, не сам же удаляешь. Ты используешь метод Release, который реализован на стороне dll directx. Обо всем этом тебе уже в которой теме толкуют
Вот отрывок примера из MSDN:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
    IDXGIFactory1* dxgiFactory = nullptr; 
    { 
        IDXGIDevice* dxgiDevice = nullptr; 
        hr = g_pd3dDevice->QueryInterface( __uuidof(IDXGIDevice), reinterpret_cast<void**>(&dxgiDevice) ); 
        if (SUCCEEDED(hr)) 
        { 
            IDXGIAdapter* adapter = nullptr; 
            hr = dxgiDevice->GetAdapter(&adapter); 
            if (SUCCEEDED(hr)) 
            { 
                hr = adapter->GetParent( __uuidof(IDXGIFactory1), reinterpret_cast<void**>(&dxgiFactory) ); 
                adapter->Release();  // <<< ВНИМАНИЕ СЮДА
            } 
            dxgiDevice->Release(); // <<< ВНИМАНИЕ СЮДА
        } 
    }
Добавлено через 4 минуты
Цитата Сообщение от -THE_MASTER666- Посмотреть сообщение
Ну где внутри то?
Внутри объекта QSharedPtr. Я тебе там выше ссылку дал на конструктор, который позволяет это обеспечить.

Добавлено через 42 секунды
Цитата Сообщение от -THE_MASTER666- Посмотреть сообщение
жду его авто удаления при выходе за скоп уже в ЕХЕ, мне надо будет в любом случае что - то вручную вызывать?
Не надо будет ничего вызывать вручную.

Добавлено через 28 секунд
Цитата Сообщение от -THE_MASTER666- Посмотреть сообщение
Можно хоть совсем чуть чуть сорца в студию
В ссылке, которую я дал на доку, был пример.
 
Текущее время: 08:24. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru