import std.stdio;
@safe:
extern(D) {
abstract class DA {
char foo();
}
class DB : DA {
override char foo() { return 'B'; }
}
class DC : DA {
override char foo() { return 'C'; }
}
}
extern(C++) {
abstract class CA {
char foo();
}
class CB : CA {
override char foo() { return 'b'; }
}
class CC : CA {
override char foo() { return 'c'; }
}
}
void main() {
DB db = new DB;
DA da = db;
DC dc = cast(DC) da;
writeln((dc is null)? "D cast was dynamic." : "D cast was static.");
CB cb = new CB;
CA ca = cb;
CC cc = cast(CC) ca;
writeln((cc is null)? "C++ cast was dynamic." : "C++ cast was static.");
return;
}
d中的静转,动转
原创
©著作权归作者所有:来自51CTO博客作者fqbqrr的原创作品,请联系作者获取转载授权,否则将追究法律责任
下一篇:谷哥批量翻译
提问和评论都可以,用心的回复会被更多人看到
评论
发布评论
相关文章
-
VUE中实现文字转拼音
在vue2中,实现将文字转为拼音的使用案例
ruby标签 文字转拼音 拼音 vue转拼音 -
Unity 中 Png转Texture2D再转Sprite
图片并加载到游戏界面中。这在单机游戏中是特别
加载 Image FileStream