gpt4 book ai didi

c++ - 如何将在重载 >> 运算符中输入的值插入 setter

转载 作者:行者123 更新时间:2023-11-28 04:39:43 28 4
gpt4 key购买 nike

如果这个问题已经被问到,我真的很抱歉。我真诚地努力提高对网站的了解,但仍在为具体问题而苦苦挣扎。无论如何,我已经想出了如何重载“>>”运算符,但我现在正在努力解决如何将在该函数中确定的值设置为变量(抱歉,如果这些都没有意义)

这是重载的 >> 函数的内容

istream& operator >> (istream& ins, Rectangle& inSides)
{
double insSide1, insSide2;

ins >> insSide1;

insSide1 = inSides._length;

ins >> insSide2;

insSide2 = inSides._width;

return ins;
}

这是我目前在 main() 中的内容

Rectangle bothOpp;
{
cin >> bothOpp;

bothOpp.getLength();
bothOpp.getWidth();

bothOpp.print();

}

我想我想问的是如何将用户的输入设置为 setter 中定义的值?非常感谢您抽出宝贵时间 (:

哦,如果需要我可以上传我创建的 setter 函数,我只是不想轰炸你们。

最佳答案

您需要修改inSides

您获得了构建Rectangle 对象所需的输入,但您从未对其进行任何操作!试试这个(对您的 Rectangle 类做出一些假设...):

istream& operator >> (istream& ins, Rectangle& inSides)
{
double len, wid;
ins >> len >> wid;

inSides = Rectangle(len, wid);
//or if you haven't made a constructor/assignment operator...
inSides._length = len;
inSides._width = wid;

return ins;
}

关于c++ - 如何将在重载 >> 运算符中输入的值插入 setter ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50494386/

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