не существует подходящего пользовательского преобразования из System :: String ^ в System :: String - PullRequest
0 голосов
/ 01 марта 2020

Я относительно неопытен в 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 будет обычной строкой.

...