请问如何取出程序自身输出名?
本帖最后由 1105110683 于 2024-1-24 12:29 编辑<火山程序 类型 = "通常" 版本 = 1 />
方法 我的输出方法1 <公开 静态 注释 = "一个输出方法模板" @输出名 = "my_method1" @视窗.输出 = 真>
{
// 请在其中填入自己的方法内容
}
比如我想取出自身程序这个输出名,请问怎么写? <火山程序 类型 = "通常" 版本 = 1 />
方法 取方法名 <公开 静态 类型 = 文本型 @嵌入式方法 = "">
{
@ @an<CVolString>(__func__)
}
取执行文件名 () Xelloss0618 发表于 2024-1-24 14:23
方法 取方法名
{
@ @an(__func__)
谢谢大佬,自己折腾了几个小时无果,还得是你厉害 呵呵仙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]