R语言
force
位于 base
包(package)。 说明
强制计算函数参数。
用法
force(x)
参数
x |
封闭函数的形式参数。 |
细节
force
强制评估形式参数。如果参数将通过词法作用域规则在闭包中捕获,并且稍后将通过循环或 apply 函数中的显式赋值或隐式赋值进行更改,则这可能很有用。
注意
这是语义糖:仅评估符号就会做同样的事情(参见示例)。
force
不强制评估其他promises 。 (它的工作原理是强制调用的实际参数与闭包的形式参数匹配时创建的承诺,这是实现惰性求值的机制。)
例子
f <- function(y) function() y
lf <- vector("list", 5)
for (i in seq_along(lf)) lf[[i]] <- f(i)
lf[[1]]() # returns 5
g <- function(y) { force(y); function() y }
lg <- vector("list", 5)
for (i in seq_along(lg)) lg[[i]] <- g(i)
lg[[1]]() # returns 1
## This is identical to
g <- function(y) { y; function() y }
相关用法
- R forceAndCall 调用带有强制参数的函数
- R formals 访问和操纵形式参数
- R formatDL 格式说明列表
- R format 以通用格式编码
- R formatC 使用 C 样式格式进行格式化
- R format.pval 设置 P 值格式
- R format.info 格式(.)信息
- R file.path 构造文件路径
- R funprog 函数式编程语言中常见的高阶函数
- R findInterval 查找区间数或索引
- R file.info 提取文件信息
- R file.show 显示一个或多个文本文件
- R factor 因子
- R function 函数定义
- R file.access 确定文件的可访问性
- R files 文件操作
- R file.choose 交互式选择文件
- R files2 目录和文件权限的操作
- R find.package 查找套餐
- R grep 模式匹配和替换
- R getwd 获取或设置工作目录
- R vector 向量 - 创建、强制等
- R lapply 对列表或向量应用函数
- R dump R 对象的文本表示
- R Sys.getenv 获取环境变量
注:本文由纯净天空筛选整理自R-devel大神的英文原创作品 Force Evaluation of an Argument。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。