C++ C++;构造函数、析构函数、类型转换错误

C++ C++;构造函数、析构函数、类型转换错误,c++,constructor,type-conversion,destructor,C++,Constructor,Type Conversion,Destructor,嘿,伙计们,我正在尝试为一个模块创建一个实现文件。它有一个我创建的头文件和一个.CC文件。在我的.CC文件中,我最初有一个主函数,但是由于这是一个类的赋值,它要求在实现中没有主函数 9 #include <curses.h> 10 #include <sys/time.h> 11 #include <time.h> 12 #include "fmttime.h" 13 14 15 struct ExpandedTime 16 { 17 1

嘿,伙计们,我正在尝试为一个模块创建一个实现文件。它有一个我创建的头文件和一个.CC文件。在我的.CC文件中,我最初有一个主函数,但是由于这是一个类的赋值,它要求在实现中没有主函数

  9 #include <curses.h>
 10 #include <sys/time.h>
 11 #include <time.h>
 12 #include "fmttime.h"
 13
 14
 15 struct ExpandedTime
 16 {
 17
 18     int et_usec;
 19     int et_sec;
 20     int et_min;
 21     int et_hour;
 22
 23 };
 24 ExpandedTime* localTime(struct timeval* tv, ExpandedTime* etime);
 25
 26
 27 struct timeval tv;
 28 struct ExpandedTime etime;
 29 gettimeofday(&tv, NULL);
 30 localTime(&tv,&etime);
 31
 32
 33
 34 ExpandedTime* localTime(struct timeval* tv, ExpandedTime* etime)
 35 {
 36     tzset();                                    // Corrects timezone
 37
 38     int epochT = (tv->tv_sec) - timezone;       // Epoch seconds with
 39     int epochUT = tv->tv_usec;                  // Timezone correction
 40
 41     int seconds = epochT % 60;
 42     epochT /= 60;
 43     etime->et_sec = seconds;
 44     etime->et_usec = epochUT;
 45
 46     int minutes = epochT % 60;
 47     epochT /= 60;
 48     etime->et_min = minutes;
 49
 50     int hours = (epochT % 24) + daylight;       // Hours with DST correction
9#包括
10#包括
11#包括
12#包括“fmttime.h”
13
14
15结构扩展时间
16 {
17
18 int et_usec;
19国际教育委员会;
20分钟;
21国际时;
22
23 };
24 ExpandedTime*本地时间(结构时间值*电视,ExpandedTime*时间);
25
26
27结构时间值电视;
28结构扩展时间;
29 gettimeofday(&tv,NULL);
30本地时间(电视和时间);
31
32
33
34 ExpandedTime*本地时间(结构时间值*电视,ExpandedTime*时间)
35 {
36 tzset();//更正时区
37
38点epochT=(电视->电视秒)-时区;//带有
39 int epochUT=tv->tv_usec;//时区校正
40
41整数秒=epochT%60;
42 epochT/=60;
43时间->等秒=秒;
44 etime->et_usec=epochUT;
45
46整数分钟=epochT%60;
47 epochT/=60;
48时间->等待时间=分钟;
49
50整小时=(epochT%24)+白天;//带DST校正的小时数
很抱歉,最后几行被切断了,在putty中复制和粘贴Mcedit很糟糕。总之,第29行和第30行给了我一个构造函数、析构函数或类型转换错误,我不知道为什么。当我有一个包含这些语句的主函数时,一切都很好,很漂亮…但是当我删除主函数时…它就坏了。有什么帮助吗非常感谢,谢谢

27 struct timeval tv;
28 struct ExpandedTime etime;
29 gettimeofday(&tv, NULL);
30 localTime(&tv,&etime);

这段代码不在任何函数中。它赤裸裸地存在于全球范围的荒野中。它需要在家里,在函数中,在任何函数中显示。那里有狼。

那么“刚刚崩溃”到底是什么呢包含?gettimeofday和localTime似乎在错误的范围内。我明白了…heehe Wolfs。但是struct语句很好..我假设原因就像一个全局变量一样,但是为什么我不能调用函数而不首先在函数内部?(如果有意义的话)@PresidentFresh因为执行从main()开始,而main()只调用其他函数。无法“调用”这段代码…或者,换一种说法:仅仅因为。因为我这么说。代码进入函数内部。是的,我明白了。哈哈。很抱歉浪费您的时间。再次感谢您的帮助!我需要创建另一个.cc文件来测试实现:)@PresidentFresh如果解决了您的问题,您应该接受答案;)