Я относительно неопытен в C ++, и в настоящее время я создаю простой проект Windows Forms. Следующий код выдает странную ошибку, которую я просто не могу обернуть вокруг себя.
if (folderBrowserDialog1->ShowDialog() == ::DialogResult::OK) {
String filepath = folderBrowserDialog1->SelectedPath;
for (auto& p : std::filesystem::directory_iterator(filepath)) {
// read files from filepath
}
}
Ошибка: «не существует подходящего пользовательского преобразования из System :: String ^ в System :: String "ссылается на строку folderBrowserDialog1-> SelectedPath. Несмотря на то, что я проверил документы о том, что SelectedPath является строкой, очевидно, это не тот тип строки, который ожидает C ++? Я предполагаю, что мне нужно сделать какое-то преобразование, но я в полной растерянности относительно того, как мне это сделать, поскольку я действительно предполагал, что SelectedPath будет обычной строкой.