|
Немножко про shared_ptr
|
|||
---|---|---|---|
#18+
MasterZiv Пишут же тебе всё человечьим голосом Потому что ты по значению возвращаешь shared_ptr, это temporary, он нигде вообще не lvalue ... |
|||
:
Нравится:
Не нравится:
|
|||
23.12.2019, 06:02 |
|
Немножко про shared_ptr
|
|||
---|---|---|---|
#18+
// теперь пытаемся воспользоваться этим методом, разными способами. Да ты просто С++ не знаешь! A a; const shared_ptr<int>& shrpi = a.GetPtr(); shared_ptr<int> shpi = a.GetPtr(); // ВОТ ТАК И НАДО ДЕЛАТЬ !!! shared_ptr<int>&& shpcri = a.GetPtr(); // OK, but... Непонятно, почему нельзя заинтинить ссылку? По стандарту С++, и тут это не только для shared_ptr Учи С++ ! Б....! ... |
|||
:
Нравится:
Не нравится:
|
|||
23.12.2019, 11:05 |
|
Немножко про shared_ptr
|
|||
---|---|---|---|
#18+
mayton Потому что ты по значению возвращаешь shared_ptr, это temporary, он нигде вообще не lvalue MasterZiv Да ты просто С++ не знаешь! MasterZiv // ВОТ ТАК И НАДО ДЕЛАТЬ !!! ... |
|||
:
Нравится:
Не нравится:
|
|||
25.12.2019, 05:14 |
|
Немножко про shared_ptr
|
|||
---|---|---|---|
#18+
CEMb Мне нужно вернуть ссылку, возвращение указателя работает на порядок медленнее. Так если там и так есть weak_ptr.lock() то это само по себе уже копирование указателя, а дальше сработает RVO и никакого копирования возвращаемого значения не будет. Так что про "на порядок медленнее" что-то не сходится. ... |
|||
:
Нравится:
Не нравится:
|
|||
25.12.2019, 13:30 |
|
Немножко про shared_ptr
|
|||
---|---|---|---|
#18+
Странно как-то меня квотировали. Хотя текст не мой. ... |
|||
:
Нравится:
Не нравится:
|
|||
25.12.2019, 13:35 |
|
Немножко про shared_ptr
|
|||
---|---|---|---|
#18+
Anatoly Moskovsky Так если там и так есть weak_ptr.lock() mayton Странно как-то меня квотировали. Хотя текст не мой. ... |
|||
:
Нравится:
Не нравится:
|
|||
25.12.2019, 14:17 |
|
Немножко про shared_ptr
|
|||
---|---|---|---|
#18+
CEMb mayton Потому что ты по значению возвращаешь shared_ptr, это temporary, он нигде вообще не lvalue MasterZiv Да ты просто С++ не знаешь! MasterZiv // ВОТ ТАК И НАДО ДЕЛАТЬ !!! Альтернативный С++? ... |
|||
:
Нравится:
Не нравится:
|
|||
25.12.2019, 16:12 |
|
Немножко про shared_ptr
|
|||
---|---|---|---|
#18+
Ну шикарно. Так мне ещё припишут цитаты Адольфа Алоизовича. ... |
|||
:
Нравится:
Не нравится:
|
|||
25.12.2019, 16:13 |
|
Немножко про shared_ptr
|
|||
---|---|---|---|
#18+
CEMb mayton Потому что ты по значению возвращаешь shared_ptr, это temporary, он нигде вообще не lvalue MasterZiv Да ты просто С++ не знаешь! MasterZiv // ВОТ ТАК И НАДО ДЕЛАТЬ !!! Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9.
... |
|||
:
Нравится:
Не нравится:
|
|||
25.12.2019, 16:14 |
|
Немножко про shared_ptr
|
|||
---|---|---|---|
#18+
mayton Ну шикарно. Так мне ещё припишут цитаты Адольфа Алоизовича. ... |
|||
:
Нравится:
Не нравится:
|
|||
26.12.2019, 05:24 |
|
Немножко про shared_ptr
|
|||
---|---|---|---|
#18+
[quote MasterZiv#22048572][SRC c++]ну вот придётся делать как-то так, да, два метода, один возвращает указатель, второй ссылку. ... |
|||
:
Нравится:
Не нравится:
|
|||
26.12.2019, 05:26 |
|
Немножко про shared_ptr
|
|||
---|---|---|---|
#18+
CEMb mayton Ну шикарно. Так мне ещё припишут цитаты Адольфа Алоизовича. Где "там"? ... |
|||
:
Нравится:
Не нравится:
|
|||
26.12.2019, 12:15 |
|
Немножко про shared_ptr
|
|||
---|---|---|---|
#18+
[quot CEMb#22049064] MasterZiv [SRC c++]ну вот придётся делать как-то так, да, два метода, один возвращает указатель, второй ссылку. зачем? Если то, на что это всё ссылается, есть всегда за всю жизнь объекта, на котором вызывается метод, возвращай ссылку. Если иногда того, на что ссылку ты возвращаешь , может не быть (nullptr) , возвращай указатель. Вот и всё ... |
|||
:
Нравится:
Не нравится:
|
|||
26.12.2019, 15:10 |
|
|
start [/forum/topic.php?fid=57&msg=39908372&tid=2017497]: |
0ms |
get settings: |
11ms |
get forum list: |
15ms |
check forum access: |
5ms |
check topic access: |
5ms |
track hit: |
40ms |
get topic data: |
14ms |
get forum data: |
3ms |
get page messages: |
55ms |
get tp. blocked users: |
2ms |
others: | 13ms |
total: | 163ms |
0 / 0 |