繁体   English   中英

对多个TryParse()调用重复使用同一变量

[英]Reuse the Same Variable For Multiple TryParse() Calls

我对此进行了一些阅读,从类似的问题中,我可能要问的问题似乎不可能(轻松)……但是我还是想验证一下。 也许所有这些问题都来自较旧版本的C#/。NET,并且最近已经实现了。

无论如何。 我在一个类中有一个switch-case语句,其目的本质上是获取一个int( typeID )和字符串( value ),并检查该value是否可以解析为typeID指示的数据类型。 例如,这是我现在拥有的一部分:

    case 1:
        char charret;
        return char.TryParse(value, out charret);
    case 2:
        Regex re = new Regex(Constants.REGEX_ALPHANUMERIC);
        return re.IsMatch(value);
    case 3:
        bool boolret;
        return bool.TryParse(value, out boolret);
    //And so on...

我想做的是能够避免在情况1和3中看到的char / bool实例化。理想情况下,我只想拥有return语句。 (显然)这没什么大不了的,但是如果我可以使它更紧凑(甚至更多),那就太好了。

这本质上是不可能的。

作为out参数传递的变量必须与参数类型完全匹配。

在调用带有out参数的函数时,无法避免声明变量。

这篇文章可能会有所帮助,因为它会进行通用的TryParse(如果可用):

http://toadcode.blogspot.com/2010/10/generic-object-tryparse.html

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM