gpt4 book ai didi

c++ - 嵌套的重载运算符?

转载 作者:行者123 更新时间:2023-11-28 08:17:30 26 4
gpt4 key购买 nike

是否可以嵌套重载运算符?我想将 << 嵌套在 () 中

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;
}
};

你能帮帮我吗?恐怕我的例子对你来说不够真实,请问你是否还有疑问。此致。

最佳答案

我真的不知道你在问什么,但我假设你的意思是为 ostream& 写一个类传递给 operator<< .首先你必须想出一个方法来转换一个T到字符串表示。我将假设函数 TToString这样做。

template<class T>
struct UnknownName
{
T g;

bool operator()(const T&v)
{
if(v==g) {
cout << v;
return true;
}

return false;
}

friend std::ostream& operator<<(std::ostream& os, const T& v) {
return os << TToString(v);
}
};

对不起,如果我误解了你的问题。

关于c++ - 嵌套的重载运算符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7211193/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com