2012-07-22 93 views
0

我刚刚在C#中使用.net反射器对一个程序集文件进行了反编译,并注意到很多我以前从未遇到过的expressionStack_xx_x表达式。根据我的理解,编译器会用这个表达式替换变量,但我不确定。它们用于什么以及它们是由编译器生成的?以下代码的不完整示例:在C#中,expressionStack_xx_x是什么意思?

public void DisplayDestinationBrowser() 
{ 
System.Windows.Forms.OpenFileDialog dialog2 = new System.Windows.Forms.OpenFileDialog(); 
System.Windows.Forms.OpenFileDialog expressionStack_45_1 = dialog2; 
string expressionStack_45_0 = ""; 
System.Windows.Forms.OpenFileDialog expressionStack_10_2 = expressionStack_45_1; 
string expressionStack_10_1 = expressionStack_45_0; 
int expressionStack_10_0 = 0xf7b1; 
} 
+1

你使用了哪一个反编译器? – svick 2012-07-22 17:46:41

+0

@svick我使用.net反射器。这是特定的吗? – 2012-07-22 18:08:35

回答

3

这些由您的反编译器生成。

编译器完全不保存变量名称。