List Container Zeitdifferenz
-
Ich habe 2 list/container und es sind einige Werte drin gespeichert.
s.u.list <COleDateTime> m_lCMSC; list <COleDateTime> m_lCFFT;
Die Containers sind vom typ COleDateTime. Die Werte sind in m_lCFFT und in m_lCMSC als Zeitformat (z.b. 11:49:28) gespeichert.
Die Werte kann ich auf ein Dialog wie unten zeigen.list<COleDateTime>::iterator CFFTIt = m_ptr->m_lCFFT.begin(); list<COleDateTime>::iterator CMSCIt = m_ptr->m_lCMSC.begin(); while (CFFTIt != m_ptr->m_lCFFT.end()) { CString sStr2 = CFFTIt->Format(_T("%H:%M:%S")); pDC->TextOut(x_1+70,y_3,sStr2); y_3=y_3+20; CFFTIt++; } while (CMSCIt != m_ptr->m_lCMSC.end()) { CString sStr2 = CMSCIt->Format(_T("%H:%M:%S")); pDC->TextOut(x_1+70,y_3,sStr2); y_3=y_3+20; CMSCIt++; }
Mein problem ist folgendes; ich will differenz zeit auf dem Dialog zeigen, also die Werte die in m_lCFFT container und m_lCMSC container
voneinaneder abziehen und diese Ergebnis(Zeitdifferenz) auf dem Dialog zeigen.Kann mir bitte jemand helfen.
Vielen Dank
-
Zieh einfach die beiden COleDateTime Werte vonenander ab. Das Ergebnis ist ein COleDateTimeSpan Wert. Aus dem kannst Du einfach die Stunden, Minuten, Sekunden extrahieren (COleDateTimeSpan::Get... Funktionen).
-
Soll ich iteratoren voneinander abziehen
CFFTIt - CMSCItoder so: m_ptr->m_lCFFT - m_ptr->m_lCMSC
die beide habe ich probiert aber ich mach irgendwo einfehler
-
oder mach ich so
m_ptr->m_lCFFT[0]-m_ptr->m_lCMSC[0];
-
Das ist doch ein Iterator. Wenn Du die Werte abziehen willst musst Du auch auf den Wert Zugreifen.
COleDateTimeSpan diff = *CFFTIt - *CMSCIt
BTW: Deine Namen für Variablen kommen mir sehr eigentümlich vor...