2010-11-14 3 views
0

У меня есть немного коряги, я должен преобразовать мой Секундомер в Int,Преобразовать Секундомер в целое

 
Stopwatch czasAlg = new Stopwatch();

czasAlg.Start(); //Do something czasAlg.Stop();

Int32 mojCzas = Convert.ToInt32(czasAlg); //I try to convert but it does't work.

// Int32 mojCzas = Convert.ToInt32(czasAlg.ToString()); //It does't work too.

Любых идей, чтобы решить эту проблему?

+0

Умм .. почему именно вам это нужно? Если вам сказали, это чистая шутка. –

ответ

0

Собирая кусочки из вашего вопроса и комментариев, кажется, что вы хотите:

Stopwatch czasAlg = new Stopwatch(); 
czasAlg.Start(); 
//Do something 
czasAlg.Stop(); 
double timeInSecondsPerN=czasAlg.Elapsed.TotalSeconds/n; 
+0

Большое спасибо, это работает – Konrad

4

Преобразование a Stopwatch в Int32 не имеет абсолютно никакого смысла. Чтобы получить эллипсовое время, вы можете использовать свойство ElapsedMilliseconds. Таким образом, обычная картина будет:

Stopwatch watch = Stopwatch.StartNew(); 
// Do something you would like to measure 
watch.Stop(); 
long totalMilliseconds = watch.ElapsedMilliseconds; 
Console.WriteLine("The operation executed in {0} ms", totalMilliseconds); 
+0

Я должен преобразовать в int, потому что мне нужно разделить czasAlg/n, – Konrad

+0

Где n - количество элементов в таблице – Konrad

+1

@Konrad, секундомер - это класс (ссылочный тип), а Int32 - это структура (тип значения). Преобразование между этими двумя типами абсолютно бессмысленно. –

1

czasAlg является объектом типа секундомера. Вы не сможете преобразовать его в Int. Проверьте документацию класса StopWatch here

Класс StopWatch имеет такие свойства, как Elapsed, ElapsedMilliseconds, ElapsedTicks и т. Д. Вы можете получить значения этих свойств, которые вам когда-либо нужны.

Смежные вопросы