gpt4 book ai didi

c++ - 将多个逗号分隔的参数传递给自定义 << 运算符

转载 作者:太空狗 更新时间:2023-10-29 20:55:31 24 4
gpt4 key购买 nike

是否可以为 C++ 中的自定义重载 << 运算符传递多个参数/具有多个参数?如果是,该怎么做。

例子:

MyClass &operator <<(int par1, int par2) {
//do stuff with arguments

//return current object to chain <<`s
return *this;
}

在我当前的项目中使用了上述代码的一个更复杂的实现版本,我似乎无法正常调用它,用逗号分隔参数:

MyClassObject << 4, 100;

我怎样才能做到这一点,最好是使用简单的语法,因为任何复杂的东西都会破坏重载运算符的目的。请注意,我已经搜索了互联网,但一无所获。

最佳答案

要么你明确地调用它:

MyClassObject.operator<<(4,100);

或者你重新定义它只接受一个参数,例如

MyClass &operator<<(std::array<int,2> par)

MyClass &operator<<(std::pair<int,int> par)

然后调用它

MyClassObject << {4,100};

关于c++ - 将多个逗号分隔的参数传递给自定义 << 运算符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35524466/

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