Вопросы по теме 'smart-pointers'
auto_ptr или эквивалент shared_ptr в управляемых классах C++/CLI
В C++/CLI вы можете использовать собственные типы в управляемом классе, поскольку не разрешено удерживать член собственного класса в управляемом классе: в этом случае вам необходимо использовать указатели.
Вот пример:
class NativeClass
{
.......
6652 просмотров
schedule
15.11.2022
Идиоматическое использование std::auto_ptr или только использование shared_ptr?
Теперь, когда shared_ptr находится в tr1, как вы думаете, что должно произойти с использованием std::auto_ptr ? Оба они имеют разные варианты использования, но все варианты использования auto_ptr также могут быть решены с помощью shared_ptr ....
4516 просмотров
schedule
10.01.2023
Умные указатели с библиотекой, написанной на C
Я использую C ++ с библиотекой OpenCV, которая представляет собой библиотеку обработки изображений, хотя это не имеет отношения к этому вопросу. В настоящее время мне нужно принять дизайнерское решение.
OpenCV, будучи библиотекой C, имеет свои...
1833 просмотров
schedule
20.03.2022
Проблемы с написанием конструктора копирования для интеллектуального указателя
Код, с которым я работаю, имеет собственную реализацию интеллектуального указателя, которая выполняет простой подсчет ссылок. Да, у нас не должно быть собственной реализации. Да, мы должны использовать один из Boost или что-то в этом роде....
1780 просмотров
schedule
10.05.2023
Могут ли интеллектуальные указатели выборочно скрывать или перенаправлять вызовы функций на объекты, которые они оборачивают?
Я работаю над проектом, в котором подсчитываются ссылки на определенные объекты - это очень похоже на настройку COM. В любом случае, в нашем проекте есть интеллектуальные указатели, которые избавляют от необходимости явно вызывать Add() и Release()...
255 просмотров
schedule
11.10.2023
Умные указатели. Когда, где и как?
Во-первых, поскольку существуют разные виды интеллектуальных указателей, я хотел бы сосредоточить этот вопрос на двух из них: навязчивых указателей с подсчетом ссылок и ненавязчивых интеллектуальных указателей. Вопрос задается индивидуально для...
1018 просмотров
schedule
18.08.2022
Каким образом интеллектуальные указатели должны быть сброшены?
Обрабатывают ли интеллектуальные указатели приведение вниз, и если нет, то как безопасно обойти это ограничение?
Примером того, что я пытаюсь сделать, является наличие двух векторов STL (например), содержащих интеллектуальные указатели. Первый...
4331 просмотров
schedule
06.04.2022
Для чего используется shared_ptr от boost (shared_ptr ‹Y› const & r, T * p)?
boost::shared_ptr имеет необычный конструктор
template<class Y> shared_ptr(shared_ptr<Y> const & r, T * p);
и я немного озадачен тем, для чего это может быть полезно. В основном он делит собственность с r , но .get()...
2454 просмотров
schedule
26.06.2022
Привести boost::shared_array‹char› к boost::shared_array‹const char›
Как я могу преобразовать boost::shared_array<char> в boost::shared_array<const char> ?
2973 просмотров
schedule
12.03.2023
подсчет ссылок с помощью циклов в умном указателе С++
В умном указателе shared_ptr используется подсчет ссылок. Однако у подсчета ссылок есть проблема, заключающаяся в том, что он не может разорвать циклы ссылок.
У меня есть четыре вопроса по этому вопросу.
1) Может ли кто-нибудь предложить мне...
3039 просмотров
schedule
14.04.2023
Как удалить умные указатели из кеша, когда ссылок больше нет?
Я пытался использовать интеллектуальные указатели для обновления существующего приложения, и я пытаюсь решить загадку. В моем приложении у меня есть кеш объектов, например, я могу называть их книгами. Теперь этот кеш книг запрашивается по...
1169 просмотров
schedule
06.03.2022
Указатель на auto_ptr вместо классического двойного указателя
Я новичок в умных указателях и пытался реорганизовать существующий код для использования auto_ptr. У меня есть вопрос о двойных указателях и их эквиваленте auto_ptr, если это имеет смысл.
У меня есть функция, которая принимает в качестве параметра...
1418 просмотров
schedule
27.06.2023
CComPtr CoCreateInstance возвращает 0x80070582 (класс уже существует).
У меня есть функция StartComObjects, вызываемая, когда пользователь нажимает кнопку «Войти», и функция StopComObjects, вызываемая, когда пользователь нажимает кнопку «Отмена». Функция StartComObjects использует CComPtr.CoCreateInstance для создания...
1880 просмотров
schedule
08.07.2022
intrusive_ptr: Почему не предоставлен общий базовый класс?
Для boost::intrusive_ptr требуется intrusive_ptr_add_ref и intrusive_ptr_release необходимо определить. Почему не предоставлен базовый класс, который будет это делать? Вот пример: http://lists.boost.org/Archives/boost/2004/06/66957.php...
2954 просмотров
schedule
06.07.2022
Считать любую ссылку на класс с помощью наследования?
В моем новом проекте я хочу (в основном, чтобы увидеть, как это будет работать) полностью запретить необработанные указатели в моем коде.
Мой первый подход заключался в том, чтобы позволить всем классам унаследовать от этого простого класса: шаблон...
838 просмотров
schedule
09.06.2023
от std :: auto_ptr до std :: unique_ptr
С приходом нового стандарта (а части уже доступны в некоторых компиляторах) новый тип std::unique_ptr должен заменить std::auto_ptr .
Точно ли их использование перекрывается (чтобы я мог выполнить глобальный поиск / замену в моем коде (не то,...
63874 просмотров
schedule
09.07.2023
Сравнения интеллектуальных указателей C++0x: непоследовательность, в чем причина?
В C++0x (n3126) интеллектуальные указатели можно сравнивать как реляционно, так и на равенство. Однако то, как это делается, кажется мне несовместимым.
Например, shared_ptr определяет operator< как эквивалент:
template <typename T,...
1223 просмотров
schedule
11.10.2022
Умный указатель С++ на статически и динамически выделенный ресурс
моему базовому классу необходимо предоставить метод, который для некоторых производных классов будет возвращать интеллектуальный указатель на динамически выделенный массив, а для некоторых других производных классов будет возвращать указатель/ссылку...
613 просмотров
schedule
11.01.2023
Умный указатель с подсчетом ссылок, который удаляет принадлежащий объекту с счетчиком ссылок больше нуля?
У меня есть дизайн, в котором объекты одновременно принадлежат 2 очередям. Иногда сами очереди могут быть удалены. В этом случае все объекты в очереди должны быть удалены и удалены из другой очереди, в которой они находятся.
Текущее решение имеет...
298 просмотров
schedule
08.03.2023
использование mem_fun() для контейнера интеллектуальных указателей
Недавно я принял решение изменить вектор указателей на вектор интеллектуальных указателей, но хотя эти интеллектуальные указатели совместимы с STL, мне не удалось преобразовать некоторые алгоритмы для их использования.
Рассмотрим
class Base
{...
1063 просмотров
schedule
05.05.2022