摘要:
#include <常用> 元<常 符*T>构 B{ 串 f(){ 串 a=T; 中 a; } }; 空 主(){ 静 常 符 a[]="啊啊"; B<a>b; 打印(b.f()); }//类似串一样作为模板参数. 阅读全文
posted @ 2022-02-06 20:40
zjh6
阅读(14)
评论(0)
推荐(0)
摘要:
元<类...M,类...N,整...I> 空 g(向量<变量<M...>>&们,序列<I...>,N&...n){ ((n=取<N>(们[I])),...); } 元<类...M,类...N> 空 g(向量<变量<M...>>&们,N&...n){ g(们,转序<N...>(),n...); } 空 阅读全文
posted @ 2022-02-06 20:05
zjh6
阅读(18)
评论(0)
推荐(0)
摘要:
多策略类在此 拥有多策略类后,不必使用继承的虚函数机制.来实现多态.代码如下: #include "多策略.cpp" 构 B{ 空 f(){ 打印("啊"); } }; 构 C{ 空 f(){ 打印("哦"); } }; 构 D{ 空 f(){ 打印("D"); } }; 元<类 T>概念 有啊=要 阅读全文
posted @ 2022-02-06 14:53
zjh6
阅读(14)
评论(0)
推荐(0)
摘要:
元<类...T>类 多策略{//不用有基类. 元<类 T>空 加一(){T b;压(们,b);} 用 M=变量<T...>;//加上它.别搞忘了. 元<元<类>类 G,整...I>空 动作(序列<I...>){ (G<T>::动作(取<I>(们[I])),...); }// 公: 向量<M>们; 多 阅读全文
posted @ 2022-02-06 14:48
zjh6
阅读(12)
评论(0)
推荐(0)
摘要:
原文 引文 隐式转换易错 问题是如何说服沃尔特 我想要输出隐式转换的警告的编译时选项 我更希望,移植C到D时,可报错,而不是保留地雷代码.应该是这样的-vimplicit-conversions隐式开关. C系外系统编程语言倾向于用显式转换. 第1个示例,在D中修复了.乘法示例有意思,其他在速度相关 阅读全文
posted @ 2022-02-06 12:09
zjh6
阅读(27)
评论(0)
推荐(0)
摘要:
原文 可通过,这个轻松禁止跟踪栈. void main() { import core.runtime : Runtime; Runtime.traceHandler = null; throw new Exception("oops"); } 不仅避免输出,还使EH更快.重用这个,还可自定义函数, 阅读全文
posted @ 2022-02-05 10:34
zjh6
阅读(15)
评论(0)
推荐(0)
摘要:
无论@safe与否,从不变转为可变不好. 如果接受可变参数,但函数内不会修改它的,如C中函数,此时,丢弃常/不变不是未定义行为.仅当丢弃常/不变后又修改它们,才是未定义行为. 要尽量避免转换类型. 编译器允许不用.dup从不变转为可变, int i; i = "Hello"; 就像上面一样. () 阅读全文
posted @ 2022-02-05 10:24
zjh6
阅读(18)
评论(0)
推荐(0)
摘要:
代码如下: 元<整 N,类 F,类...T>构 取型:取型<N-1,T...>{}; 元<类 F,类...T>构 取型<0,F,T...>{ 用 型=F; }; 空 主(){ 用 B=取型<2,整,短,长,整,串>::型; 打印(类名<B>()); } 注意,不要这样用: 元<整 N,类 F,类.. 阅读全文
posted @ 2022-02-04 22:55
zjh6
阅读(11)
评论(0)
推荐(0)
摘要:
#include <常用> 空 主(){ 用 T=变量<整,串,整,长,浮>;T t; 用 B=推导(取<1>(t)); 打印(类名<B>()); } 阅读全文
posted @ 2022-02-04 22:40
zjh6
阅读(15)
评论(0)
推荐(0)
摘要:
#include <常用> #include "向量针.cpp" 元<类 T>构 A{ 整 i; 空 f(){ 静转<T>(本)->f(); } };//不能放一起.只能用变量. 构 B:公 A<B>{ 空 f(){ 打印("啊"); } }; 构 C:公 A<C>{ 空 f(){ 打印("哦"); 阅读全文
posted @ 2022-02-04 20:05
zjh6
阅读(20)
评论(0)
推荐(0)
浙公网安备 33010602011771号