Ok I have created a basic menu system very minimal so I can figure out this virtual char thing. Ok here is my error message.
.\menu.cpp(22) : error C2679: binary '>>' : no operator found which takes a right-hand operand of type 'overloaded-function' (or there is no acceptable conversion)
C:\Program Files\Microsoft Visual Studio 8\VC\include\istream(995):
could be 'std::basic_istream<_Elem,
_Traits> &std::operator >><std::char_traits<char>>
(std::basi
c_istream<
_Elem,_Tra
its> &,signed char *)'
with
[
_Elem=char,
_Traits=std::char_traits<c
har>
]
C:\Program Files\Microsoft Visual Studio 8\VC\include\istream(1002)
: or 'std::basic_istream<_Elem,
_Traits> &std::operator >><std::char_traits<char>>
(std::basi
c_istream<
_Elem,_Tra
its> &,signed char &)'
with
[
_Elem=char,
_Traits=std::char_traits<c
har>
]
C:\Program Files\Microsoft Visual Studio 8\VC\include\istream(1009)
: or 'std::basic_istream<_Elem,
_Traits> &std::operator >><std::char_traits<char>>
(std::basi
c_istream<
_Elem,_Tra
its> &,unsigned char *)'
with
[
_Elem=char,
_Traits=std::char_traits<c
har>
]
C:\Program Files\Microsoft Visual Studio 8\VC\include\istream(1016)
: or 'std::basic_istream<_Elem,
_Traits> &std::operator >><std::char_traits<char>>
(std::basi
c_istream<
_Elem,_Tra
its> &,unsigned char &)'
with
[
_Elem=char,
_Traits=std::char_traits<c
har>
]
C:\Program Files\Microsoft Visual Studio 8\VC\include\istream(155):
or 'std::basic_istream<_Elem,
_Traits> &std::basic_istream<_Elem,
_Traits>::
operator >>(std::basic_istream<_Ele
m,_Traits>
&(__cdecl *)(std::basic_istream<_Ele
m,_Traits>
&))'
with
[
_Elem=char,
_Traits=std::char_traits<c
har>
]
C:\Program Files\Microsoft Visual Studio 8\VC\include\istream(161):
or 'std::basic_istream<_Elem,
_Traits> &std::basic_istream<_Elem,
_Traits>::
operator >>(std::basic_ios<_Elem,_T
raits> &(__cdecl *)(std::basic_ios<_Elem,_T
raits> &))'
with
[
_Elem=char,
_Traits=std::char_traits<c
har>
]
C:\Program Files\Microsoft Visual Studio 8\VC\include\istream(168):
or 'std::basic_istream<_Elem,
_Traits> &std::basic_istream<_Elem,
_Traits>::
operator >>(std::ios_base &(__cdecl *)(std::ios_base &))'
with
[
_Elem=char,
_Traits=std::char_traits<c
har>
]
C:\Program Files\Microsoft Visual Studio 8\VC\include\istream(175):
or 'std::basic_istream<_Elem,
_Traits> &std::basic_istream<_Elem,
_Traits>::
operator >>(std::_Bool &)'
with
[
_Elem=char,
_Traits=std::char_traits<c
har>
]
C:\Program Files\Microsoft Visual Studio 8\VC\include\istream(194):
or 'std::basic_istream<_Elem,
_Traits> &std::basic_istream<_Elem,
_Traits>::
operator >>(short &)'
with
[
_Elem=char,
_Traits=std::char_traits<c
har>
]
C:\Program Files\Microsoft Visual Studio 8\VC\include\istream(228):
or 'std::basic_istream<_Elem,
_Traits> &std::basic_istream<_Elem,
_Traits>::
operator >>(unsigned short &)'
with
[
_Elem=char,
_Traits=std::char_traits<c
har>
]
C:\Program Files\Microsoft Visual Studio 8\VC\include\istream(247):
or 'std::basic_istream<_Elem,
_Traits> &std::basic_istream<_Elem,
_Traits>::
operator >>(int &)'
with
[
_Elem=char,
_Traits=std::char_traits<c
har>
]
C:\Program Files\Microsoft Visual Studio 8\VC\include\istream(273):
or 'std::basic_istream<_Elem,
_Traits> &std::basic_istream<_Elem,
_Traits>::
operator >>(unsigned int &)'
with
[
_Elem=char,
_Traits=std::char_traits<c
har>
]
C:\Program Files\Microsoft Visual Studio 8\VC\include\istream(291):
or 'std::basic_istream<_Elem,
_Traits> &std::basic_istream<_Elem,
_Traits>::
operator >>(long &)'
with
[
_Elem=char,
_Traits=std::char_traits<c
har>
]
C:\Program Files\Microsoft Visual Studio 8\VC\include\istream(309):
or 'std::basic_istream<_Elem,
_Traits> &std::basic_istream<_Elem,
_Traits>::
operator >>(__w64 unsigned long &)'
with
[
_Elem=char,
_Traits=std::char_traits<c
har>
]
C:\Program Files\Microsoft Visual Studio 8\VC\include\istream(329):
or 'std::basic_istream<_Elem,
_Traits> &std::basic_istream<_Elem,
_Traits>::
operator >>(__int64 &)'
with
[
_Elem=char,
_Traits=std::char_traits<c
har>
]
C:\Program Files\Microsoft Visual Studio 8\VC\include\istream(348):
or 'std::basic_istream<_Elem,
_Traits> &std::basic_istream<_Elem,
_Traits>::
operator >>(unsigned __int64 &)'
with
[
_Elem=char,
_Traits=std::char_traits<c
har>
]
C:\Program Files\Microsoft Visual Studio 8\VC\include\istream(367):
or 'std::basic_istream<_Elem,
_Traits> &std::basic_istream<_Elem,
_Traits>::
operator >>(float &)'
with
[
_Elem=char,
_Traits=std::char_traits<c
har>
]
C:\Program Files\Microsoft Visual Studio 8\VC\include\istream(386):
or 'std::basic_istream<_Elem,
_Traits> &std::basic_istream<_Elem,
_Traits>::
operator >>(double &)'
with
[
_Elem=char,
_Traits=std::char_traits<c
har>
]
C:\Program Files\Microsoft Visual Studio 8\VC\include\istream(404):
or 'std::basic_istream<_Elem,
_Traits> &std::basic_istream<_Elem,
_Traits>::
operator >>(long double &)'
with
[
_Elem=char,
_Traits=std::char_traits<c
har>
]
C:\Program Files\Microsoft Visual Studio 8\VC\include\istream(422):
or 'std::basic_istream<_Elem,
_Traits> &std::basic_istream<_Elem,
_Traits>::
operator >>(void *&)'
with
[
_Elem=char,
_Traits=std::char_traits<c
har>
]
C:\Program Files\Microsoft Visual Studio 8\VC\include\istream(441):
or 'std::basic_istream<_Elem,
_Traits> &std::basic_istream<_Elem,
_Traits>::
operator >>(std::basic_streambuf<_E
lem,_Trait
s> *)'
with
[
_Elem=char,
_Traits=std::char_traits<c
har>
]
'Menu::choice': function call missing argument list; use '&Menu::choice' to create a pointer to member
while trying to match the argument list '(std::istream)'
.\menu.cpp(24) : error C3867: 'Menu::choice': function call missing argument list; use '&Menu::choice' to create a pointer to member
main.cpp
Here is my code: