Информация об изменениях

Сообщение эмм... variadic-pack в нешаблонную функцию от 12.10.2016 14:41

Изменено 12.10.2016 14:42 niXman

привет!

снова хочу странного =)

struct somestruct {
    template<typename... Args>
    shared_buffer pack(const Args&... args) {
        return pack2(args...);
    }

private:
    shared_buffer pack2(???);
}; // somestruct


т.е. хочется каким-то образом(возможно даже используя tuple<>), передать args в send2().

для фундаментальных типов все просто — преобразуем args в массив указателей на void, и добавляем какие-то ID`ы, идентифицирующие типы.
но со всеми остальными(в том числе и юзерскими типами) типами все как-то не перспективно...

кто-то задавался похожим вопросом?

спасибо.
привет!

снова хочу странного =)

struct somestruct {
    template<typename... Args>
    shared_buffer pack(const Args&... args) {
        return pack2(args...);
    }

private:
    shared_buffer pack2(???);
}; // somestruct


т.е. хочется каким-то образом(возможно даже используя tuple<>), передать args в send2(), которая реализована в cpp`шке.

для фундаментальных типов все просто — преобразуем args в массив указателей на void, и добавляем какие-то ID`ы, идентифицирующие типы.
но со всеми остальными(в том числе и юзерскими типами) типами все как-то не перспективно...

кто-то задавался похожим вопросом?

спасибо.