Учитывая некоторые классы с параметризованными конструкторами, например:
class A
{
public:
A(bool b, int i) { /*...*/ }
private:
A(const A&) {}
};
class B
{
public:
B(char c, double d) { /* ... */ }
private:
B(const B&) {}
};
Как правильно инициализировать кортеж таких классов?
boost::tuple<A,B> tup( /* ??? */ );
Не использовать конструктор копирования A или B и, если возможно, не использовать конструктор перемещения. Предпочтительно решение С++ 03, если это возможно.
std::unique_ptr<A>
в качестве обходного пути. - person Brian Bi   schedule 07.04.2016std::tuple
в порядке, но конструкторы перемещения - нет? - person Brian Bi   schedule 07.04.2016boost-tuples
в своем теге. - person Nicol Bolas   schedule 07.04.2016