d链接区间
import std.algorithm : sort;
import std.conv : to;
import std.range;
import std.stdio;
enum limit = 5;
enum step = limit / 10.0;/*
enum step = 1; //*/
void main()
{
TypeInfo rangeType;
auto a = iota(limit);
auto b = iota(step, limit, step);
/* <- 切换注解,请加-> /
auto ab = chain(a, b);
rangeType = typeid(ab);/*/
auto arrA = a.array.to!(double[]);
auto arrB = b.array;
auto ab = chain(arrA, arrB);
rangeType = typeid(ab.sort);//*/
ab.writeln(": ", rangeType);
} /*
current print:
==============
[0, 0.5, 1, 1, 1.5, 2, 2, 2.5, 3, 3, 3.5, 4, 4, 4.5]: std.range.SortedRange!(std.range.chain!(double[], double[]).chain(double[], double[]).Result, "a < b", 0).SortedRange
other print:
============
[0, 1, 2, 3, 4, 0.5, 1, 1.5, 2, 2.5, 3, 3.5, 4, 4.5]: std.range.chain!(std.range.iota!(int, int).iota(int, int).Result, std.range.iota!(double, int, double).iota(double, int, double).Result).chain(std.range.iota!(int, int).iota(int, int).Result, std.range.iota!(double, int, double).iota(double, int, double).Result).Result
不同类型(其中一个是double
)但相同区间可用chain()
链接.但是,因为opCmp()
与排序
等算法的兼容性
,需要转换为数组
.
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 25岁的心里话
· 按钮权限的设计及实现