当前位置: 首页 > news >正文

2308d的静态构造函数循环依赖示例

原文

//Steve:
__gshared string[string] dict;
shared static this() {dict = ["a" : "b"];
}

这里有两个论点:这不能是CRT构造器,因为它依赖于D运行时,并且认为它应该进入自己的模块是一个QoL问题,当你想要私有到类而不是私有到模块时,可为提供它,因为语言按期望工作,而这里不是.

亚当的示例:

__gshared Object function()[string] factories;
Object build(string s) {return factories[s]();
}
mixin template Register() {shared static this() {factories[typeof(this).mangleof] = () {return new typeof(this);};}
}

因为依赖D运行时,不能是CRT构造器,但也不能放进单独模块中,因为打算把它插件中.

http://www.lryc.cn/news/120220.html

相关文章:

  • Linux 目录和文件常见操作
  • 不基于比较的排序:基数排序
  • shell和反弹shell
  • 构建Docker容器监控系统(Cadvisor +Prometheus+Grafana)
  • java实现文件的下载
  • 分享Python技术下AutojsPro7云控代码
  • 【Linux】网络通信
  • 【mysql】—— 表的约束
  • jeecgboot 登录成功默认其他路由
  • 【1572. 矩阵对角线元素的和】
  • GaussDB 开发篇+Java调用JDBC访问openGauss数据库
  • 钕铁硼永磁材料基本概念
  • 2005-2020年280个地级市绿色全要素生产率测算原始数据
  • 电流的测量(反馈电流表)
  • 白帽黑帽与linux安全操作
  • 【TypeScript】进阶之路语法细节,类型和函数
  • 每日一题 611有效三角形的个数(相向双指针)
  • Flink源码之JobMaster启动流程
  • C#,数值计算——抛物线插值与Brent方法(Parabolic Interpolation and Brent‘s Method)的计算方法与源程序
  • 基于Selenium技术方案的爬取界面内容实践
  • 线程记录(1)
  • requests
  • Python 监控 Windows 服务
  • ELK中grok插件、mutate插件、multiline插件、date插件的相关配置
  • 【C#】静默安装、SQL SERVER静默安装等
  • 在vue3中定义组件的5种方式
  • 算法训练营题目,忘了第几天了
  • 蓝桥杯-统计子矩阵
  • 在线预览Word、Excel、PowerPoint等文件
  • 准确预测极端降水,哥伦比亚大学推出升级版神经网络 Org-NN