Size: a a a

2020 August 26

hh

horse horssyyy in supapro.cxx
Он их там не будет пытаться копировать?
источник

AP

Alexander Potapov in supapro.cxx
Нужно помечать move конструктор noexcept
источник

AP

Alexander Potapov in supapro.cxx
Иначе вектор сломается (не будет компилится)
источник

D

Danya in supapro.cxx
horse horssyyy
И с такими объектами не будет проблем в стл контейнерах?
Ну std::vector<std::unique_ptr<T>> работает же
источник

VS

Vlad Serebrennikov in supapro.cxx
horse horssyyy
Он их там не будет пытаться копировать?
будет ошибка компиляции там, где они необходимы
источник

AF

Aidar Fattakhov in supapro.cxx
Danya
Ну std::vector<std::unique_ptr<T>> работает же
Шутка про "это не контейнер"
источник

AP

Alexander Potapov in supapro.cxx
К слову эти ошибки ужасно неочевидны если не знать в чем проблема
источник

D

Danya in supapro.cxx
Aidar Fattakhov
Шутка про "это не контейнер"
Непонятная шутка
источник

AP

Alexander Potapov in supapro.cxx
Danya
Ну std::vector<std::unique_ptr<T>> работает же
Только тут появляется куча доп аллокаций и постоянные кеш мисы
источник

D

Danya in supapro.cxx
Alexander Potapov
Только тут появляется куча доп аллокаций и постоянные кеш мисы
Ну так мы не про аллокации и кешмиссы же?
источник

АК

Александр Караев... in supapro.cxx
Alexander Potapov
Только тут появляется куча доп аллокаций и постоянные кеш мисы
Это был пример, что контейнер может работать с мув-онли типом
источник

AP

Alexander Potapov in supapro.cxx
В целом плохой подход так писать если класс не требует полиморфизма
источник

AP

Alexander Potapov in supapro.cxx
Зачем если и без юников все работать может???
источник

AP

Alexander Potapov in supapro.cxx
Можно просто указатели в контейнер пихать че нет
источник

АК

Александр Караев... in supapro.cxx
Alexander Potapov
Зачем если и без юников все работать может???
Похоже, ты не понял. Никто не предлагает пихать что-то в указатель только ради хранения в контейнере. Мысль была в том, что vector<MoveOnly> прекрасно работает.
источник

AP

Alexander Potapov in supapro.cxx
А, да, не понял, сори
источник

D

Danya in supapro.cxx
Александр Караев
Похоже, ты не понял. Никто не предлагает пихать что-то в указатель только ради хранения в контейнере. Мысль была в том, что vector<MoveOnly> прекрасно работает.
Спасибо, Александр!
источник

IZ

Ilia Zviagin in supapro.cxx
Working Horse Close to light speed
По скорости использование m_var, this -> var эквивалентно?
this->var конечно же быстрее, так компилятор ещё думает, а где же мне this взять, а так -- сразу ясно, что это.
источник

VR

Vladyslav Ryuzaki in supapro.cxx
Ilia Zviagin
this->var конечно же быстрее, так компилятор ещё думает, а где же мне this взять, а так -- сразу ясно, что это.
))
источник

IZ

Ilia Zviagin in supapro.cxx
Working Horse Close to light speed
Это верно, но как компилятор их отличает друг от друга?
class A {
   public Foo(int value) {
       int m_var = value;  // На этом моменте компилятор поймет, что переменной нет в классе => она локальная, верно?
   }
}

class B: A {
   int m_var = 10; // Ошибки все еще не будет, но переменная может быть доступна в схожей же функции только через this
   public Bar(int value) {
       int m_var = value; // Другая переменная
       this -> m_var = 9; // Обращение к переменной класса
}
всё верно. Только не надо так переменные локальные называть.
источник