-2
请参阅下面的C#代码。C#中全局分配的字符串变量的问题
string file_name;
if (Directory.GetFiles(targetPath, "*.xls").Length != 0)
{
var directory = new DirectoryInfo(@"C:\Users\INTEL_ADMIN\Downloads\SubDir");
var myFile = (from f in directory.GetFiles()
orderby f.LastWriteTime descending
select f).First();
file_name = myFile.Name;
}
MessageBox.Show(file_name);
我已经初始化字符串file_name
全球和初始化if else
块内的价值,并试图取回块外相同的值。我得到下面的Build Error
。你能解释为什么..?
Usage of unassigned local variable file_name
您需要正确初始化变量:'串FILE_NAME = null',因为编译器必须具有保证初始化放心,在你的情况下,它并不保证柜面如果条件失败的。 –
将其更改为'string file_name = string.Empty;' – Equalsk
string file_name =“”; – jdweng