作者热门文章
- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
简单的问题,我不认为这是可能的,但之前感到惊讶。
我有一个包含各种数学函数的库,让我们举一个非常简单的 floorcap 示例:
class MathLib {
public static double floorcap(double floor, double value, double cap) {
return Math.Min(Math.Max(floor, value), cap);
}
}
在另一个类的另一个方法中,我只想输入
var mat_adjusted = floorcap(1, maturity, 5);
但这不起作用,因为它没有在此类中声明,而是在库中。它让我打字
var mat_adjusted = MathLib.floorcap(1, maturity, 5);
wich 给代码增加了噪音。我可以将其缩短为
using m = MyMathLibrary.MathLib;
.. yadayada
var mat_adjusted = m.floorcap(1, maturity, 5);
但是,我还是不想一直输入类名。那可能吗?我也在 F# 中编写代码,你有点习惯了一段时间后不必拼出类型/模块等。当我不得不编写 C# 时,这件事情让我很恼火(有点),因为它分散了 actaul“事情的实质”。
这里有很多函数,当你需要调用一些嵌套的函数时,所有这些点和类名加起来。我喜欢我的代码尽可能干净。
提前致谢
格特简
最佳答案
不,这是不可能的 - 它必须在它所在的范围内进行限定(显然,如果该事物位于您当前上下文的内范围内,那么您可以,但这会遗漏问题的重点和目标。)
这是因为没有什么直接比任何类型等更高,所以可以这么说,没有“全局召唤”的感觉。
关于c# - 有没有一种方法可以调用静态函数而不必提及类型?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7336477/
我是一名优秀的程序员,十分优秀!