Hello all,
I am trying to get enable if to work with Visual C++ 7.0 and boost 1.33.
for the following member function implemenation I get an error:
template<>
typename boost::enable_if, _ElemFct::result_type>::type
operator->()
{
return get_at(ptr_coll, pos);
}
template<>
typename boost::enable_if,
boost::add_pointer<_ElemFct::result_type>::type>::type
operator->()
{
return &(get_at(ptr_coll, pos));
}
My compiler is in German. I have tried to translate the error messages...
error C2504: 'boost::enable_if_does_not_work_on_this_compiler<T>' : Base class undefined
with
[
T=boost::function2::result_type
]
see reference to the instance of compiled class template 'boost::enable_if'
with
[
Cond=boost::is_pointer::result_type>,
T=boost::function2::result_type
]
see reference to the instance of compiled class template
'generic_iterator<_Coll,_Ty,_ElemFct,_LenFct,_Diff,_Ptr,_Ref,_Cat>'
with
[
_Coll=MemberTest,
_Ty=std::string,
_ElemFct=element_retrieval,
_LenFct=length_retrieval,
_Diff=int,
_Ptr=std::string *,
_Ref=std::string &,
_Cat=std::bidirectional_iterator_tag
]
error C2039: 'type' : Is not an element of 'boost::enable_if'
with
[
Cond=boost::is_pointer::result_type>,
T=boost::function2::result_type
]
With Kind Regards,
Ovanes Markarian