d不能用非常ctfe指针

原文

__gshared const TEST = import(`onlineapp.d`);
extern(C) void main(){
     __gshared  bin_ptr = TEST.ptr;
}

试试这个:

__gshared  bin_ptr;
shared static this()
{//放在这个里面?
    bin_ptr = TEST.ptr;//但这个是全局的了
}

__gshared const TEST = import(`onlineapp.d`);


extern(C) void main()
{
}

-betterC,得用pragma(crt_constructor).
这样:

__gshared immutable(char)* bin_ptr;

pragma(crt_constructor)
void init_ptr()
{//pragma
    bin_ptr = TEST.ptr;
}

__gshared TEST = import("this.d");

extern(C) void main()
{
}
posted @   zjh6  阅读(12)  评论(0编辑  收藏  举报  
相关博文:
阅读排行:
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 25岁的心里话
· 按钮权限的设计及实现
点击右上角即可分享
微信分享提示