当函数名存储在变量中时如何调用类的函数

艾皮

当函数名存储在变量中时,我在 R 中尝试调用函数时遇到了问题。从论坛上我可以看到 get(funcName) 可以工作,但是如果该函数在引用类中呢?

下面的例子:

TestClass <- setRefClass("TestClass", 
                        fields = c("x", "y"),
                        methods = list(
                          say_hello = function() message("Hi")
                        )
)
myTest <- TestClass(x=2, y=3)
myTest$say_hello()  # works ok

# Now i'd like to use the call by using the name of the function in a variable
funcName <- "say_hello"

get(funcName) # this would work if not a class
get(funcName,myTest) #this gives me the function definition and does not run the function

任何指针都会很棒!

阿克伦

使用[[代替$

myTest[[funcName]]()
Hi

使用get,我们需要进行调用

get(funcName, myTest)()
Hi

相似

myTest$say_hello()

即如果我们这样做

myTest$say_hello
Class method definition for method say_hello()
function () 
message("Hi")
<environment: 0x7fbbc326b390>

它只返回函数

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

调用函数名称存储在bash中的变量中

如何在类中通过函数名称调用函数

如何调用存储在变量中的异步函数?

如何调用存储在变量中的函数

R-从存储在变量中的函数名称调用函数吗?

调用函数名称时如何获取?

JavaScript:调用存储在变量中的函数时访问“ this”

如何仅在首次调用函数时定义函数中的变量?

javascript对象-如何在类函数中调用类变量

将函数名称存储在变量中并使用变量调用函数是一种不好的做法吗?

使用函数名称中的变量调用函数

如何在CMake中调用名称存储在变量中的函数

如何在Python,mh中调用存储在变量中的函数

在调用高阶函数时存储变量

如何从存储在变量中的字符串调用函数?

如何将函数存储为python中的类变量?

不知道扩展类的扩展类的c ++调用构造函数存储在基类变量中

如何比类中的成员变量更早地调用构造函数?

Python:如何从类中的函数调用特定变量?

如何从函数中调用变量

调用存储在映射中的类中的函数

调用名称存储在变量中的函数

按需执行存储在变量中的类函数

如何获取当前名称范围中的所有类,变量,函数名称?

PHP:变量函数名称(函数指针)称为;如何告诉IDE我的函数被调用?

调用函数时变量

Flutter:如何调用存储在变量中的类

在python中调用类时在类中调用函数

在 VBA 中调用类函数时出错