По образовательным причинам я решил создать класс, имитирующий std::string
.
У меня есть метод с именем append
, который я реализовал следующим образом:
template<class T, class U>
inline String& String::append(T b, U e)
{
std::for_each(b, e, [this](char c) {push_back(c); }); // [&] or this?
return *this;
}
Так что мне нужен доступ this
указатель внутри лямбда-exppr, поэтому я должен захватить this
по значению или по ссылке? ** если по значению, то он также работает нормально.