火山软件开发平台

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
热搜: 火山 源码 类库
查看: 608|回复: 6
打印 上一主题 下一主题

[视窗] 请问如何取出程序自身输出名?

[复制链接]

4

主题

12

帖子

48

积分

新手上路

Rank: 1

积分
48
跳转到指定楼层
楼主
发表于 2024-1-24 12:28:14 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 1105110683 于 2024-1-24 12:29 编辑



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

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

}



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

使用道具 举报

26

主题

1503

帖子

5645

积分

核心用户

Rank: 9Rank: 9Rank: 9

积分
5645
来自 2#
发表于 2024-1-24 14:23:15 | 只看该作者
<火山程序 类型 = "通常" 版本 = 1 />

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

评分

参与人数 1金钱 +3 收起 理由
呵呵仙8 + 3 大神玩火山,比吴总还牛!!

查看全部评分

回复

使用道具 举报

40

主题

158

帖子

639

积分

核心用户

Rank: 9Rank: 9Rank: 9

积分
639
板凳
发表于 2024-1-24 14:21:13 | 只看该作者
取执行文件名 ()
回复

使用道具 举报

4

主题

12

帖子

48

积分

新手上路

Rank: 1

积分
48
地板
 楼主| 发表于 2024-1-24 16:07:09 | 只看该作者
Xelloss0618 发表于 2024-1-24 14:23
方法 取方法名
{
    @ @an(__func__)

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

使用道具 举报

50

主题

484

帖子

1948

积分

金牌会员

Rank: 6Rank: 6

积分
1948
5#
发表于 2024-1-24 22:30:05 | 只看该作者
Xelloss0618 发表于 2024-1-24 14:23
方法 取方法名
{
    @ @an(__func__)


牛b啊!编译为EXE还有效!!
回复

使用道具 举报

50

主题

484

帖子

1948

积分

金牌会员

Rank: 6Rank: 6

积分
1948
6#
发表于 2024-1-24 22:41:42 | 只看该作者
Xelloss0618 发表于 2024-1-24 14:23
方法 取方法名
{
    @ @an(__func__)

那么,会不会还有什么取包名()?取类名()?取变量名()?之类的?
回复

使用道具 举报

26

主题

1503

帖子

5645

积分

核心用户

Rank: 9Rank: 9Rank: 9

积分
5645
7#
发表于 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())
    }
}
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|火山软件开发平台 ( 鄂ICP备18029190号 )

GMT+8, 2024-5-21 03:19 , Processed in 0.100907 second(s), 23 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表