2011-06-15 35 views
0

试想一下,这个简单的情况:名称参数是否动态?

int temperature = 20; 

是否有可能给动态参数名称?例如(我知道这是行不通的,只是为了得到这个想法):

int Array[1].ToString() = 20; 

谢谢! 干杯克里斯

+0

我会说不,但是---你想完成什么? – driis 2011-06-15 20:57:06

+1

我不明白你要在这里做什么。 – 2011-06-15 20:59:12

+0

你提供的你知道的例子不起作用,但它意在给我们提供这个想法......我不明白这个想法。其实我很傻眼。 – 2011-06-15 20:59:39

回答

2

不在C#中。你可以得到最接近的将是使用Dictionary<string, object>

var variables = new Dictionary<string, object>(); 

variables.Add(Array[1].ToString(), 20); 

但不仅涉及每次需要检索值一次铸造,但它也将导致装箱/拆箱。

总而言之,我当然不会推荐它。

0

试试这个

using System; 

class Program 
{ 
    static void Foo(dynamic duck) 
    { 
     duck.Quack(); // Called dynamically 
    } 

    static void Foo(Guid ignored) 
    { 
    } 

    static void Main() 
    { 
     // Calls Foo(dynamic) statically 
     Foo("hello"); 
    } 
} 

,并按照该链接Link1

相关问题