d错误传播数组域
原文
用-preview=dip1000
标志,应可编译
,但未编译.
@safe int[] fun()
{ import std : 数组, map;
域 r = [1,2,3].map!"a+3";
return r.数组;
}
如果直接返回r
,数据引用会逃逸
,但数组
会复制数据.无论有域
与否,应允许返回数组区间
.
这里问题是为了能够传递
给数组
,r
是域
,数组
还需要接收域参数
.但是,因为是复制
到分配内存
中,数组
的参数不能是域
.
除非区间有非域
区间原语,数组
参数应该推导域
.它不是逃逸
输入数组,而是解引用
,并复制元素到新的非域GC
数组中.
推导域
失败,会退回到从纯
推导中的中域
.
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 25岁的心里话
· 按钮权限的设计及实现