递归火山软件开发平台

标题: [建议] "@匹配方法" 任意格式非静态方法 [打印本页]

作者: 609177738    时间: 2023-6-4 15:40
标题: [建议] "@匹配方法" 任意格式非静态方法
本帖最后由 609177738 于 2023-6-4 15:42 编辑

@匹配方法文本型参数本属性只能应用于嵌入式方法的参数定义成员上,用作指定需要为该参数提供一个指定格式的类静态/非静态方法(由属性值所指定模板方法的静态属性决定). 属性值为一个任意类方法的访问名称(不检查是否对其具有访问权限),用作指定本参数所能接收类方法的定义格式,为空文本表示可以接收任何格式的类静态方法.
注意本属性不能与"@匹配类型"/"@需求类型"/"@返回值类型"属性同时使用.

现有的 功能 可以匹配 任意类下的静态方法 ,即 不限制返回值,不限制参数(包括类型 个数)
也可以匹配指定 类下的 非静态方法 ,但是 匹配时 必须固定死 非静态方法的 返回值类型  和 参数的个数及类型

现有需求  必须匹配 任意类下的  任意格式的非静态普通方法 , 即不限制返回值,不限制参数(包括类型和个数)
希望能加持下
@飞扬工作室



作者: 创世魂    时间: 2023-6-4 22:21
如果能弄非静态方法,最开始就弄了。。。肯定是不好处理,所以没有弄。

就是 启动线程  这个方法,也是火山视窗出了好多版本后才出的。。一开始也想着直接支持一下,但是不好处理,最后也放弃了。
作者: 创世魂    时间: 2023-6-4 22:23
不限制方法参数这个,这个应该可以弄。。。就是得封装几个方法,取最后参数数量,取参数类型啥的。。当然编译器也得改动改动。。
作者: 609177738    时间: 2023-6-5 09:16
创世魂 发表于 2023-6-4 22:23
不限制方法参数这个,这个应该可以弄。。。就是得封装几个方法,取最后参数数量,取参数类型啥的。。当然编 ...

只需放开火山IDE的检测或者新增一个检测符号即可 ,  传递进去如何使用是(C++)开发者用户需要考虑的问题 .   举个例子 比如 @匹配方法   "@sn<anyfun>"


现在 调用N个不同的非静态方法  就得写N个嵌入式方法来匹配N个非静态方法  ...
根本没法实现通用,就像下面这样
// 以下  *参  均为 非静态方法
嵌入式方法_一参    @匹配方法 "一参"
嵌入式方法_二参    @匹配方法 "二参"
嵌入式方法_三参    @匹配方法 "三参"
.....
作者: 609177738    时间: 2023-6-6 21:05
@飞扬工作室
@飞扬工作室
@飞扬工作室







欢迎光临 递归火山软件开发平台 (https://bbs.voldp.com/) Powered by Discuz! X3.4