Привет!
Вообще говоря, непонятно, почему не работает: я ввел такой код:
C++ |
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
| #include<ctime>
#include<iostream>
int main() {
tm t1;
t1.tm_sec = 5;
t1.tm_min = 30;
t1.tm_hour = 12;
t1.tm_mday = 30;
t1.tm_mon = 11;
t1.tm_year = 2011 - 1900;
tm t2;
t2.tm_sec = 5;
t2.tm_min = 30;
t2.tm_hour = 12;
t2.tm_mday = 30;
t2.tm_mon = 11;
t2.tm_year = 2011 - 1900;
time_t tt1 = mktime(&t1), tt2 = mktime(&t2);
time_t tstr = tt2 - tt1;
tm *tim = localtime(&tstr);
std::cout << tstr << '\n';
system("pause"); return 0;
} |
|
и он вывел ожидаемый ноль. (При изменении числа секунд и минут результат изменяется соответственно и правильно.)
Так что, причина, похоже, - в объектах obj1 и obj2.