摘要:
模板可以生成函数,结构,联,类,接口和任何其他合法的D代码. 模板插件插入模板实例,如下: mixin a_template!(template_parameters) // mixin template EdgeArrayFeature(T, size_t count) { //这里定义`模板插件 阅读全文
posted @ 2020-03-01 12:30
zjh6
阅读(16)
评论(0)
推荐(0)
摘要:
返回类型属性:auto, ref, inout, 和 auto ref auto:不需要指定函数返回类型,即可变,占位符.有多个语句,返回各种返回类型的公共类型,如整与双精的公共类型为双精,则返回双精. auto func(int i) { if (i < 0) { return i; // 整 } 阅读全文
posted @ 2020-03-01 12:28
zjh6
阅读(22)
评论(0)
推荐(0)
摘要:
原来模板章仅包含(函数,结构,类)模板和类型模板参数. 快速语法.D模板,易定义和使用.更可读,很强大.定义函数,结构,类的模板,只需要提供模板参数列表. T twice(T)(T value) { return 2 * value; } class Fraction(T) { T numerato 阅读全文
posted @ 2020-03-01 12:27
zjh6
阅读(23)
评论(0)
推荐(0)
摘要:
元组Tuple,是std.typecons实现的库特征.合并多个值进一个值. 利用std.meta的AliasSeq来完成某些操作. 更多可见此 import std.stdio; import std.typecons; void main() { auto t = tuple(42, "hell 阅读全文
posted @ 2020-03-01 12:26
zjh6
阅读(18)
评论(0)
推荐(0)
摘要:
标签语法标签:. 这个标签给本行的行尾加个名字. 还可以anExpression(); end: anotherExpression();,但不常用. void foo(bool condition) { writeln("first"); if (condition) { goto end; } 阅读全文
posted @ 2020-03-01 12:11
zjh6
阅读(16)
评论(0)
推荐(0)
摘要:
联. 联的成员共享内存占用.也可有成员函数 struct S { int i; double d; } // ... writeln(S.sizeof); //用-m32编译,上为12,下为8 union U { int i; double d; } // ... writeln(U.sizeof) 阅读全文
posted @ 2020-03-01 12:08
zjh6
阅读(21)
评论(0)
推荐(0)
摘要:
可在内部域中定义嵌套,以缩小符号可见性来帮助封装. 定义嵌套函数 void outerFunc(int parameter) { int local; void nestedFunc() { local = parameter * 2; } struct NestedStruct { void me 阅读全文
posted @ 2020-03-01 12:04
zjh6
阅读(14)
评论(0)
推荐(0)
摘要:
foreach支持:切片,数组,关联数组,区间,库类型(特定),文件(行). 对自定义类型,可自定义每一. 1,定义区间成员函数,允许与其他区间算法连用. 2,定义一个或多个opApply. opApply优先.但一般区间成员函数就足够了,更简单,更常用. 当对象有集合概念时,可以每一.否则,没必要 阅读全文
posted @ 2020-03-01 12:02
zjh6
阅读(21)
评论(0)
推荐(0)
摘要:
函数指针用于存储函数地址,以备后用.类似c语言的函数指针. 闭包存储函数指针和上下文,上下文可以是函数执行区域或构或类. 闭包也允许其他语言的闭包. &取地址. import std.stdio; int myFunction(char c, double d) { return 42; } voi 阅读全文
posted @ 2020-03-01 12:01
zjh6
阅读(23)
评论(0)
推荐(0)
摘要:
a is b是操作符.is(...)是表达式. 是表达式,确定表达式是否为真.在static if和限制模板时特别有用. is(T),确定T是个有效类型. static if (is (int)) { writeln("valid"); } else { writeln("invalid"); } 阅读全文
posted @ 2020-03-01 11:59
zjh6
阅读(26)
评论(0)
推荐(0)
浙公网安备 33010602011771号