我正在尝试将一段C#代码翻译成C ++ / CLI。
C#代码:
DirectoryInfo dir = new DirectoryInfo(path);
DirectoryInfo [] subdirs;
foreach (DirectoryInfo subdir in dir.GetDirectories())
Search(subdir.Fullname);
我把它弄到最后一行;
C ++代码:
System::IO::DirectoryInfo^ dir = gcnew DirectoryInfo(dirbxSearch->Path);
array <System::IO::DirectoryInfo^>^ subdirs;
for each (System::IO::DirectoryInfo^ subdir in dir->GetDirectories())
Search(subdir->FullName);
问题在于我不知道搜索来自哪里。作为一个含糊不清的词,我也无法在任何参考文献中找到它。如果没有正确的继承,它就无法编译,所以我有点卡住了。
答案 0 :(得分:0)
C#不允许全局函数(作用于类外);你可以拥有的最接近的是一个类型的静态函数。由于函数的范围不是特定的类(即MyType.Search(subdir.Fullname)
),因此它必须位于代码片段所在的类层次结构中。
在Visual Studio中,右键单击Search()
标识符并选择“转到定义”(默认快捷方式为F12)。如果您不使用Visual Studio,则至少可以搜索包含继承结构的类。