Я пытаюсь измерить выполнение кода, и мне нужно отобразить в минутах: секундах.
Поскольку я заметил, что TimeSpan может форматироваться легче, я попытался использовать:
TimeSpan ts = TimeSpan::FromTicks(complete-commence);
String elapsedTime = TimeSpan::Format("mm", ts.Minutes);
Но не работает, несмотря на то, что метод существует в MSDN:
Error 1 error C3149: 'System::String' : cannot use this type here without a top-level '^'
Error 2 error C2039: 'Format' : is not a member of 'System::TimeSpan'
Error 3 error C3861: 'Format': identifier not found
Что я сделал не так?
Синтаксис неправильный, он должен быть:
TimeSpan ts = TimeSpan::FromTicks(complete-commence);
String^ elapsedTime = ts->ToString("mm\\:ss"); // "mm\\:ss" is minutes:seconds
Обратите внимание, что это загрузка значения из тиков, а не секунд или миллисекунд. Например, если ваши входные данные представлены в миллисекундах, вы должны использовать:
TimeSpan ts = TimeSpan::FromMilliseconds(complete-commence);
Других решений пока нет …