boost::iostreams - бага ?
От: nen777w  
Дата: 02.12.16 11:26
Оценка:
Фильтр с закрытым copy CTOR.

struct crc_md5_filter : public boost::iostreams::output_filter
{
    typedef char char_type;
    typedef boost::iostreams::output_filter_tag category;

    crc_md5_filter(const crc_md5_filter&) = delete;
    crc_md5_filter &operator = (const crc_md5_filter &) = delete;
 ...
};

//Используем
crc_md5_filter md5_filter;

boost_io::filtering_ostream ofs;
ofs.push(boost::ref(md5_filter)); <<-- Error    C2280    'boost::iostreams::crc_md5_filter::crc_md5_filter(const boost::iostreams::crc_md5_filter &)': attempting to reference a deleted function


Здесь в документации на push() сказано что в случае закрытого copy CTOR нужно использовать boost::ref, что я и сделал.

Если конструктор открыть, то компилируется, хотя сам конструктор не используется.

Бага?
Re: boost::iostreams - бага ?
От: uzhas Ниоткуда  
Дата: 02.12.16 11:40
Оценка: +1
Здравствуйте, nen777w, Вы писали:

N>//Используем


рекомендуется выкладывать минимальный код в онлайн компилятор
см. http://rsdn.org/forum/cpp/6613937.flat
Автор: uzhas
Дата: 18.11.16
Re: boost::iostreams - бага ?
От: andrey.desman  
Дата: 02.12.16 11:41
Оценка:
Здравствуйте, nen777w, Вы писали:

N>Бага?


У меня на gcc version 5.4.0, boost 1.58 все компилируется.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.