1105110683 发表于 2024-1-24 12:28:14

请问如何取出程序自身输出名?

本帖最后由 1105110683 于 2024-1-24 12:29 编辑



<火山程序 类型 = "通常" 版本 = 1 />

方法 我的输出方法1 <公开 静态 注释 = "一个输出方法模板" @输出名 = "my_method1" @视窗.输出 = 真>
{
    // 请在其中填入自己的方法内容

}



比如我想取出自身程序这个输出名,请问怎么写?

Xelloss0618 发表于 2024-1-24 14:23:15

<火山程序 类型 = "通常" 版本 = 1 />

方法 取方法名 <公开 静态 类型 = 文本型 @嵌入式方法 = "">
{
    @ @an<CVolString>(__func__)
}

a759077146 发表于 2024-1-24 14:21:13

取执行文件名 ()

1105110683 发表于 2024-1-24 16:07:09

Xelloss0618 发表于 2024-1-24 14:23
方法 取方法名
{
    @ @an(__func__)


谢谢大佬,自己折腾了几个小时无果,还得是你厉害

呵呵仙8 发表于 2024-1-24 22:30:05

呵呵仙8 发表于 2024-1-24 22:41:42

Xelloss0618 发表于 2024-1-25 00:50:36

呵呵仙8 发表于 2024-1-24 22:41
那么,会不会还有什么取包名()?取类名()?取变量名()?之类的?

火山PC的包名是命名空间,好像是不能取,其他可以

<火山程序 类型 = "通常" 版本 = 1 />

类 源码信息 <公开 折叠 @全局类 = 真>
{

    # @begin
    # <> <include>
    # #define VolOutputName(x) L#x
    # <> </include>
    # @end

    方法 取当前方法名 <公开 静态 类型 = 文本型 注释 = "返回当前方法的输出名(火山翻译到C++源码后的名称)" 折叠 @嵌入式方法 = "">
    {
      @ @an<CVolString>(__func__)
    }

    方法 取静态方法名 <公开 静态 类型 = 文本型 注释 = "返回指定静态方法的输出名(火山翻译到C++源码后的名称)" 注释 = "注: 由于不能匹配任意参数类型的动态方法,就不写动态的版本了." 折叠
            @嵌入式方法 = "">
    参数 静态方法 <注释 = "可提供任意参数类型的静态方法" @匹配方法 = "">
    {
      @ @an<CVolString>(VolOutputName(@<静态方法>))
    }

    方法 取变量输出名 <公开 静态 类型 = 文本型 注释 = "返回指定变量的输出名(火山翻译到C++源码后的名称)" 折叠 @嵌入式方法 = "">
    参数 变量 <@匹配类型 = 通用型 @需求类型 = 可写入变量>
    {
      @ @an<CVolString>(VolOutputName(@<变量>))
    }

    方法 取类型输出名 <公开 静态 类型 = 文本型 注释 = "返回指定数据类型的输出名(火山翻译到C++源码后的名称)" 折叠 @嵌入式方法 = "">
    参数 数据类型 <注释 = "所欲取类型名称的变量" @匹配类型 = 通用型 @需求类型 = 数据类型>
    {
      @ @an<CVolString>(VolOutputName(@<数据类型>))
    }

    方法 取变量类型名称 <公开 静态 类型 = 文本型 注释 = "返回指定变量的C++类型名称."
            注释 = "注意: 返回类型的最底层名称,比如长整数返回\"__int64\",而不是火山定义的\"INT64\"." 折叠 @视窗.外部头文件 = "<typeinfo>" @嵌入式方法 = "">
    参数 变量 <注释 = "所欲取类型名称的变量" @匹配类型 = 通用型 @需求类型 = 可写入变量>
    {
      @ @an<CVolString>(typeid(@<变量>).name())
    }
}
页: [1]
查看完整版本: 请问如何取出程序自身输出名?