AF
Size: a a a
AF
AF
E
class A {и
public:
A(string s) : value(move(s)) {}
private:
string value;
};
class A {ведь всё равно при вызове конструктора и там и там оригинальная строка скопируется один раз, зачем городить forward?
public:
A(string&& s) : value(forward<string>(s)) {}
private:
string value;
};
AB
D
class A {и
public:
A(string s) : value(move(s)) {}
private:
string value;
};
class A {ведь всё равно при вызове конструктора и там и там оригинальная строка скопируется один раз, зачем городить forward?
public:
A(string&& s) : value(forward<string>(s)) {}
private:
string value;
};
D
AB
class A {и
public:
A(string s) : value(move(s)) {}
private:
string value;
};
class A {ведь всё равно при вызове конструктора и там и там оригинальная строка скопируется один раз, зачем городить forward?
public:
A(string&& s) : value(forward<string>(s)) {}
private:
string value;
};
string s;
A a(s);
AB
D
decltype(func)
non-object type?decltype(&func)
норм же?E
template<typename ... Types>
class Foo {
public:
template <typename T>
Foo(T&& t) : value(std::forward<T>(t)) {}
private:
variant<Types ...> value;
};
D
class A {и
public:
A(string s) : value(move(s)) {}
private:
string value;
};
class A {ведь всё равно при вызове конструктора и там и там оригинальная строка скопируется один раз, зачем городить forward?
public:
A(string&& s) : value(forward<string>(s)) {}
private:
string value;
};
AB
decltype(func)
non-object type?decltype(&func)
норм же?D
E
template<typename ... Types>
class Foo {
public:
template <typename T>
Foo(T&& t) : value(std::forward<T>(t)) {}
private:
variant<Types ...> value;
};
E
D
AB
D
AB