gpt4 book ai didi

c++ - 返回引用且仅返回引用

转载 作者:塔克拉玛干 更新时间:2023-11-03 07:55:32 25 4
gpt4 key购买 nike

我有以下函数,它是 Grid 类的一部分:

T& select(unsigned int x, unsigned int y)
{
return nodes[x + width * y].element;
}

有什么方法可以强制编译器拒绝从返回的 T& 构造 T 而不删除 T 的复制构造函数(它甚至可能不是一个类)?

auto n = grid.select(1,1); // this should be illegal

最佳答案

当你返回一个引用时,代码的用户以后用它做什么是完全不受你控制的。他们可以使用您的引用来创建拷贝这一事实在该语言中是有效的。

关于c++ - 返回引用且仅返回引用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20017522/

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