Описание тега qsharedpointer

QSharedPointer - это класс Qt, который содержит сильную ссылку на общий указатель.
2 ответа

Функция, которая возвращает QList

У меня есть следующие классы class LMJEntity : public QObject { Q_OBJECT Q_PROPERTY(int Id READ getId WRITE setId) }; class LMJDataMapper : public QObject { Q_OBJECT virtual QList<LMJEntity *> *findAll(LMJPaging *paging){ QList<LMJEntity *&…
06 апр '15 в 23:38
0 ответов

Какова стоимость вызова функции-члена через общий указатель?

Часто утверждается, что разыменование умного указателя не оказывает заметного влияния на производительность. (Например, здесь: C Smart Pointer Performance) Теперь мне интересно, правда ли это. Я понимаю, что это может быть, если операции над указанн…
10 авг '15 в 11:57
2 ответа

QSharedPointer из необработанного указателя

В настоящее время у меня есть что-то вроде этого: QSharedPointer<t> Qsharedfoo; Теперь у меня есть необработанный указатель на foo, который также называется rawfoo, Как сделать так, чтобы foo point владел необработанным указателем и начинал ук…
10 янв '14 в 23:29
1 ответ

QSharedPointer:: Create()

В Qt 4 у меня есть следующий массив: QSharedPointer<unsigned char> encrypted(new unsigned char[RSA_size(publickey)]); Как я могу объединить два распределения в одном с новой функцией Qt 5 create? QSharedPointer<T> QSharedPointer::create(…
08 янв '14 в 03:52
2 ответа

Только простые указатели, используемые в Qt API

Я работал с Qt несколько дней, и мне интересно, почему все их API используют простые указатели вместо их собственных умных указателей, таких как QSharedPointer, Не будет ли более последовательным их использование?
11 апр '15 в 19:15
1 ответ

Какой метод управления памятью мы должны использовать в Qt?

Я довольно новичок в программировании, так как я все еще учусь эффективно кодировать, поэтому мой вопрос может показаться немного странным. Поскольку я учусь кодировать с помощью Qt, я знаю, что в Qt есть метод управления памятью, при котором родите…
24 дек '15 в 16:26
1 ответ

Обобщая общие указатели и QSharedPointer::data() против shared_ptr::get()?

Я сделал библиотеку Qt, которая построена на давних абстракциях, таких как QSharedDataPointer а также QSharedData, Поэтому, когда мне нужен был обычный разделяемый указатель, имело смысл QSharedPointer для согласованности. Я сейчас использую это в п…
22 июн '12 в 04:33
1 ответ

Qt 4.8.7 артефакты памяти

Мне нужно использовать Qt 4.8.7 для Embedded Linux, чтобы создать очень простой проект для тестирования. Проект включает в себя 2 формы - Dialog (состоит из QTextEdit и button. Кнопка очищает QTextEdit и QClipboard) и MainWindow (состоит из кнопки, …
13 июн '18 в 17:09
0 ответов

Сохранить QList<QSharedPointer <MyClass >> как QVariant

У меня проблема с сохранением QList QSharedPointer как QVariant в производном классе QGraphicsItem. MyClass - это абстрактный базовый класс, используемый в качестве интерфейса. Я сделал это, чтобы иметь возможность привести все "подклассы MyClass" к…
07 июл '17 в 13:00
1 ответ

QSharedPointer Неверный адрес, указанный для RtlFreeHeap

У меня есть программа, которая интенсивно использует QSharedPointer, Когда я выполняю свою программу, она работает нормально, но когда я отлаживаю ее с помощью GDB, она начинает выдавать ошибки. "Invalid Address specified to RtlFreeHeap" бросается в…
23 сен '10 в 01:52
2 ответа

QSharedPointer не возвращает false

У меня сейчас что-то вроде этого QSharedPointer&lt;QMainWindow&gt; cv; Этот общий указатель используется как cV = QSharedPointer&lt;QMainWindow&gt;(new QMainWindow(p)); cV-&gt;setAttribute(Qt::WidgetAttribute::WA_DeleteOnClose); cV-&gt;show(); Тепер…
14 авг '14 в 20:01
1 ответ

Использование QSharedPointer с new[] приводит к "Несоответствие free() / delete / delete[]" в valgrind

У меня есть следующий код: QPair&lt;QSharedPointer&lt;unsigned int&gt;, int&gt; someclass::somefunction() { int siz = data_size(); QSharedPointer&lt;unsigned int&gt; buffer(new unsigned int[siz]); // Fill the buffer... return qMakePair(buffer, siz);…
24 окт '11 в 12:40
1 ответ

Qt умный указатель, эквивалентный boost::shared_array?

Хотя существует эквивалент boost::shared_ptr (QSharedPointer) Я не смог найти то, что напоминает boost::shared_array, Конечно, я мог бы использовать что-то похожее на QSharedPointer&lt;const std::vector&lt;T&gt; &gt; shared_vector_ptr(new std::vecto…
04 июл '12 в 08:52
1 ответ

Класс Qsharedpointer

Я пытаюсь использовать класс смарт-указатель следующим образом class A { friend class B; virtual methods (); protected: virtual ~classA(); } class B:public QSharedPointer&lt;class A&gt; { class B(); ~ class B(); } Я планирую заменить вхождения класс…
21 мар '11 в 21:29
1 ответ

Доступ к ссылочным элементам в QList и QSharedPointer

Существует переменная-член QList с именем m_noteList содержащий элементы класса QSharedPointer Note, private: QList&lt; QSharedPointer&lt;Note&gt; &gt; m_noteList; Если создается новая заметка, ее ссылка добавляется в список: void Traymenu::newNote(…
23 фев '14 в 13:03
2 ответа

Pimpl + QSharedPointer - Destructor = Disaster

Вчера я столкнулся с несчастьем, которое заняло у меня 24 часа разочарования. Проблема сводилась к неожиданным сбоям, возникающим на случайной основе. Чтобы усложнить ситуацию, отчеты об отладке также имели абсолютно случайный характер. Чтобы еще бо…
15 мар '13 в 20:52
2 ответа

Присоединение сигналов и слотов к объекту внутри QSharedPointer

Мое приложение содержало несколько таких функций: void SomeClass::set_data_provider(DataProvider *data_provider) { connect(data_provider, SIGNAL(data_available(int)), this, SLOT(data_available(int))); } Чтобы избежать передачи необработанных указате…
10 фев '15 в 21:03
1 ответ

Почему в классе QSharedPointer нет перегруженного оператора T * ()

Тем не менее, класс QSharedDataPointer есть это. Я всегда должен определить Class::pointer typedef для краткости и создать указатель с Class::pointer(new Class), Кто-нибудь знает причину этого?
10 сен '14 в 09:35
1 ответ

Ошибка сегментации при доступе к объекту QSharedPointer

Я написал небольшой пример кода приложения, как показано ниже. #include &lt;QCoreApplication&gt; #include &lt;QSharedPointer&gt; #include &lt;QDebug&gt; class INav { public: virtual int getdata() = 0; virtual void setdata(int a) = 0; }; class Nav : …
26 окт '15 в 17:18
1 ответ

Разница между QSharedPointer и QSharedDataPointer?

В чем разница между этими двумя типами указателей? Насколько я могу прочитать, QSharedPointer может хорошо справиться с ситуацией, так зачем же нужен QSharedDataPointer?
06 окт '10 в 22:59