该C# 3.0 spec具有第10.6.1.3下面的代码示例“输出参数”:字符串作为C#3.0中的char []数组?
using System;
class Test
{
static void SplitPath(string path, out string dir, out string name) {
int i = path.Length;
while (i > 0) {
char ch = path[i – 1];
if (ch == '\\' || ch == '/' || ch == ':') break;
i--;
}
dir = path.Substring(0, i);
name = path.Substring(i);
}
static void Main() {
string dir, name;
SplitPath("c:\\Windows\\System\\hello.txt", out dir, out name);
Console.WriteLine(dir);
Console.WriteLine(name);
}
}
我不能得到这个代码在VS2005/C#2.0编译。 C#3.0中的字符串行为是否发生了变化,以便可以将字符串引用为char []数组而不显式转换它(语句“ch = path [i-1]”)?
吉姆 - 请注意您的回复如何与您回复的答案不同步?您需要将回复添加为评论,而不是添加新答案,以确保对话流动。 你还没有评论的声望呢,我明白了,但你知道...... – 2008-12-03 18:38:13