Microsoft C ++ Exception: std :: bad_function_call в местоположении памяти < /p>
< /blockquote>
Это мой код: < /p>
< />
Это мой код: < /p>
< />
Код: Выделить всё
#include
class Foo {
public:
Foo(int) : m_deleter{ []() {} } {}
Foo(const Foo &) = delete;
Foo(Foo &&) = default;
Foo & operator=(const Foo &) = delete;
Foo & operator=(Foo &&) = default;
~Foo()
{
m_deleter();
}
private:
std::function m_deleter;
};
int main() {
Foo foo(1);
Foo bar(2);
std::swap(foo, bar);
}
Редактировать: Оказывается, он сбивается с визуальной студией 2015 и GCC 4.9.2, но не с Clang 3.5.
Подробнее здесь: https://stackoverflow.com/questions/289 ... ual-studio
Мобильная версия