gpt4 book ai didi

C++ 返回对模板的引用

转载 作者:太空宇宙 更新时间:2023-11-04 15:40:58 26 4
gpt4 key购买 nike

以下是我在编写代码的测试过程中发现错误的一小部分作业。

我有一个模板化的数组类
在那个类中,我有一个名为 get 的函数,它返回对模板的引用,它的签名是:

template <class T>
T& Array<T>::get(int index)

显然,我希望能够从数组中获取一个值——我在函数中所做的每一次更改都会同时更改数组中的原始值。
我有以下电话:

Company Hiring=companies.get(companyID);

它确实会返回具有相同数据的公司,但每当我更改它(比方说,添加一名 worker 、更改员 worker 数......)并返回时,数组中的公司不会改变并保持空白。

我做错了什么?你有什么想法吗?

如果您需要更多详细信息\代码,请告诉我,我会进行编辑。

非常感谢。

最佳答案

也许你的意思是:

Company& hiring = companies.get(companyID);

如果您没有在该变量中捕获引用,那么您正在制作一个永远不会更改的拷贝,除非您直接对其进行操作。

关于C++ 返回对模板的引用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23249043/

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