【发布时间】:2012-06-13 04:57:28
【问题描述】:
我希望能够以某种方式标记一个函数(可能是属性?),以便当从任何地方调用它时,其他一些代码可以处理参数并返回一个值而不是被调用的函数,或者可以让函数正常执行。
我会用它来轻松缓存。
例如,如果我有一个名为 Add10 的函数,它看起来像这样:
int Add10 (int n)
{
return n + 10;
}
如果函数以相同的值 (Add10(7)) 重复调用,它总是会给出相同的结果 (17),因此每次都重新计算是没有意义的。当然,我不会用这么简单的函数来做,但我相信你能理解我的意思。
C# 是否提供任何方式来做我想做的事? 我需要一种将函数标记为缓存的方法,以便当有人执行 Add10(16) 时,首先在某处运行某些代码以检查字典是否我们已经知道 Add10 的值 16 并在执行时返回它、计算、存储和如果我们不这样做,就返回。
【问题讨论】:
-
stackoverflow 上有很多线程,例如stackoverflow.com/questions/4929540/…
标签: c#