08用d编程域.
不能在内部域中定义与外部域中相同的名字.
有的在域的最前
定义变量
一般在使用前定义变量,而不是在之后.//找不到,也不规范
最好在刚要使用前定义,在速度,不犯错,可读,代码维护上
都不错.
import std.stdio;
void main(){
for ({ int i = 0; double d = 0.5; } i < 10; ++i) {
writeln("i: ", i, ", d: ", d);
d /= 2;
}
}
在{}中声明多种类型变量
d官方编程风格
?:
,三元符.三个表达式,叫三元符.
真式/假式的类型不必相同,但必须要有公共类型
.计算涉及类型转换/继承
,结果还可能是左值/右值
确定表达式类型简单方法:typeof(...).stringof
.
十进制可用下划线
数字分隔符,可千分可万分,第1个字符不能为0,0x为16进制,8进制,可在std.conv
里面用octal!541
等初化.因为不常用,所以从语言转向库里面了.
二进制,0b
/0B
import std.stdio;
void main() {
writeln("\n--- 用十进制写---");
//匹配整
writeln( 2_147_483_647, "\t\t",
typeof(2_147_483_647).stringof);
//匹配长
writeln( 2_147_483_648, "\t\t",
typeof(2_147_483_648).stringof);
writeln("\n--- 未用10进制---");
writeln( 0x7FFF_FFFF, "\t\t",
typeof(0x7FFF_FFFF).stringof);//匹配整
writeln( 0x8000_0000, "\t\t",
typeof(0x8000_0000).stringof);//匹配正
//匹配长
writeln( 0x1_0000_0000, "\t\t",
typeof(0x1_0000_0000).stringof);
//匹配正长
writeln( 0x8000_0000_0000_0000, "\t\t",
typeof(0x8000_0000_0000_0000).stringof);
}
L
后缀表长
.U/u
后缀表正
,UL/LU
表正长
,不用l
是避免与1
搞混.
浮点可用16进制表示:如0x9a.bc
.
十进制中e/E
表以10为底的幂.可正可负.
16进制中p/P
表以2为底的幂.0xabc.defP4
相当于*16=2^^4
.
对浮点.默认为双精
,f/F
为浮,L
为实(80位,10字节)
字符.\\
表转义.
常见\\,\a(叫),\n(下行),\r(回车),\t(制表),\v(垂直制表),\f新页
.
‘42’,’\x21’,’\u…’,’\U…’,
类似超文本的,’€’,’&heart;’,’©’,更多
双引号字符里面可以包括以上.
反引号:所见即所得串.r"..."
,也是所见即所得
import std.stdio,std.conv;
writeln(`c:\nurten`);
writeln(r"c:\nurten");//如上一样
writeln(hexString!"44 64 69 6c 69");
writeln("c:\nurten");
"\x44\x64\x69\x6c\x69"
,与(hexString!"44 64 69 6c 69")
一样,x"...."
已经过时了.
writeln(q"MY_DELIMITER
first line
second line
MY_DELIMITER");
两边的分隔串是无意义的,可以取消.像q".hello."
打印出来什么,很难确定.
q{},{必须是d源代码}
.帮助编辑器显示d源代码
为了优化编译时计算字面量的.
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 25岁的心里话
· 按钮权限的设计及实现