I have a class Extractor:
template<typename OutputSchema, typename ExtractorType, typename InputStream = BinaryInputStream>
class Extractor : public Operator<Extractor<OutputSchema, ExtractorType, InputStream>, OutputSchema, -1>
{
}
And I want to create an object of this class in another class. I create an object of this class in the following way:
class dummy{
Extractor<OutputSchema, ExtractPolicy, TextInputStream<TextInputStreamTraitsConst<'\t', '\0', '\0', false, false, Default, false, false, false, 0, CharFormat_uint16, false, false>, CInput> > m_extractors;
}
Here, class TextInputStream is of the type:
template<typename TextInputStreamTraits, typename InputStreamType>
class TextInputStream : public TextInputStreamTraits, public TextConversions
{
}
And TextInputStreamTraitsConst is of the type:
template<UINT64 _delimiter,
UINT64 _rowDelimiter,
UINT64 _escapeChar,
bool _escape,
bool _textQualifier,
TextEncoding _encoding,
bool _validateEncoding,
bool _silent,
bool _haveNullEscape,
int _skipFirstRowsCount,
CharFormat _charFormat,
bool _laxValidation = false,
bool _nullStringExtractEnable = true>
struct TextInputStreamTraitsConst
{
}
However on instantiating Extractor class I get the following error:
error C2661: 'TextInputStream,CInput>::TextInputStream': no overloaded function takes 4 arguments?
Aucun commentaire:
Enregistrer un commentaire