Lambda + shared_ptr

191
27 августа 2018, 08:50

Вот пример:

static std::function<MyClass*()> myFunc;
void main() {
   auto sp = std::make_shared<MyClass>();
   myFunc = [&]{ return sp.get() } ;
   ...
}
void f() {
   ...
   auto pMyClass = myFunc ? muFunc() : null_ptr ;
   if ( pMyClass ) {
      pMyClass->metod();
   }
}

Как лучше захватывать указатель из sp для лямбды? Правильно ли я делаю захват по ссылке?
Чтобы только вызвать metod() верно ли возвращать обычный указатель, а не сам shared_ptr из лямбды? Или лучше вообще сделать [&]()-> shared_ptr<MyClass>& { return sp } ? (заранее извиняюсь, если синтаксис неверный)

READ ALSO
Проблема с записью в файл символов CR и LF

Проблема с записью в файл символов CR и LF

Я считываю побайтно в бинарном режиме файл и записываю в другойПри записи назад в файл если в первом файле будет символ CR программа запишет...

237
Thymeleaf : не работает header/footer фрагменты

Thymeleaf : не работает header/footer фрагменты

Всем приветРаботаю с Spring boot mvc и Thymeleaf

190
Синхронизация по файлу Java

Синхронизация по файлу Java

Подскажите пожалуйста, как сделать, чтобы потоки синхронизировались по файлу "fileWithAnAdresstxt"

233
Как различать в строке пробел JAVA

Как различать в строке пробел JAVA

ЗдраствуйтеХочу при вводе данных вида: "privet kak dela" машина разделяла Строку на слова: "1 = привет; 2 = как; 3 = dela"

151