嵌套重载操作符可能吗?我想窝< <内()嵌套重载操作符?
template<class T>
struct UnknownName
{
T g;
T&operator<<(std::ostream&os, const T&v){return os<<v;}
bool operator()(const T&v)
{
if(v==g)
//do the streaming << then return true
else return false;
}
};
你可以帮我吗?恐怕我的例子对你来说已经不够了,请问你是否还有疑问。真诚。
你必须将你的'operator <<'作为非成员函数在类之外。 –
'operator <<'是一个二元运算符,所以你的例子有太多的参数('std :: ostream','const T&'和接收者对象'UnknownName'。你想调用'operator <<'''Unknown''object或'const T&'参数? –
Dawson