设为首页收藏本站

新微赢技术网

 找回密码
 注册
搜索
热搜: 回贴
查看: 589|回复: 9
打印 上一主题 下一主题

[求助]关于头文件的问题

[复制链接]
跳转到指定楼层
1#
发表于 2009-11-3 03:49:48 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
对于 #ifndef
#define
.
.
#endif

要怎么用啊 小弟到现在都没弄明白啊
10#
发表于 2009-11-3 03:50:04 | 只看该作者
//////////////////
//Time.h
/////////////////
#ifndef time_h
#define time_h
class Time{
public:
Time();
void settime(int,int,int);
void printmilitary();
private:
int hour;
int minute;
int second;
};
#endif
//////////////////////////
//Time.cpp
//////////////////////////
#include <iostream>
#include "Time.h"
using namespace std;
Time::Time()
{hour=minute=second=0;}
void Time::settime(int h,int m,int s)
{
hour = (h>=0&&h<24)?h:0;
minute = (m>=0&&m<60)?m:0;
second = (s>=0&&s<60)?s:0;
}
void Time::printmilitary()
{
cout<<(hour<10?"0":"")<<hour<<":"<<(minute<10?"0":"")<<minute;
}


//////////////////
//main.cpp
/////////////////
#include <iostream>
#include "Time.h"
using namespace std;
int main()
{
Time t;
t.printmilitary();
t.settime(13,27,6);
t.printmilitary();
return 0;
}
回复 支持 反对

使用道具 举报

9#
发表于 2009-11-3 03:49:59 | 只看该作者
可是当我把头文件名给改了以后,它显示找不到这个头文件啊
回复 支持 反对

使用道具 举报

8#
发表于 2009-11-3 03:49:58 | 只看该作者
问题出在你对头文件的命名上
time.h和C++原有的头文件重名了

#ifndef time_h
#define time_h
class Time{
public:
Time();
void settime(int,int,int);
void printmilitary();
private:
int hour;
int minute;
int second;
};
#endif

#include <iostream>
#include "Time.h"
using namespace std;
Time::Time()
{hour=minute=second=0;}
void Time::settime(int h,int m,int s)
{
hour = (h>=0&&h<24)?h:0;
minute = (m>=0&&m<60)?m:0;
second = (s>=0&&s<60)?s:0;
}
void Time::printmilitary()
{
cout<<(hour<10?"0":"")<<hour<<":"<<(minute<10?"0":"")<<minute;
}

#include <iostream>
#include "Time.h"
using namespace std;
int main()
{
Time t;
t.printmilitary();
t.settime(13,27,6);
t.printmilitary();
return 0;
}
回复 支持 反对

使用道具 举报

7#
发表于 2009-11-3 03:49:57 | 只看该作者
#ifndef time_h
#define time_h
class time{
public:
time();
void settime(int,int,int);
void printmilitary();
private:
int hour;
int minute;
int second;
};
#endif

#include <iostream.h>
#include "time.h"
time::time()
{hour=minute=second=0;}
void time::settime(int h,int m,int s)
{
hour = (h>=0&&h<24)?h:0;
minute = (m>=0&&m<60)?m:0;
second = (s>=0&&s<60)?s:0;
}
void time::printmilitary()
{
cout<<(hour<10?"0":"")<<hour<<":"<<(minute<10?"0":"")<<minute;
}
#include <iostream.h>
#include "time.h"
int main()
{
time t;
t.printmilitary();

t.settime(13,27,6);
t.printmilitary();
return 0;
}



他提示是划线的地方错

错误提示是: statement missing ;
undefined symbol 't'



我用的是tc++啊
回复 支持 反对

使用道具 举报

6#
发表于 2009-11-3 03:49:56 | 只看该作者
代码帖一部分上来,还有错误提示是什么?
回复 支持 反对

使用道具 举报

5#
发表于 2009-11-3 03:49:55 | 只看该作者
这我是知道  但是为什么编译通不过呢
回复 支持 反对

使用道具 举报

4#
发表于 2009-11-3 03:49:53 | 只看该作者
#ifndef 宏名//如果宏没有被定义过
执行程序段...
回复 支持 反对

使用道具 举报

3#
发表于 2009-11-3 03:49:51 | 只看该作者
我现在看的这本书是这么写的啊 但是我不知道怎么用啊 编译都通不过
回复 支持 反对

使用道具 举报

2#
发表于 2009-11-3 03:49:50 | 只看该作者
这个不需要太掌握吧....头文件卫士以后的趋势是渐渐淡出了。...
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

申请友链|小黑屋|最新主题|手机版|新微赢技术网 ( 苏ICP备08020429号 )  

GMT+8, 2024-11-18 20:38 , Processed in 0.115228 second(s), 9 queries , Gzip On, Memcache On.

Powered by xuexi

© 2001-2013 HaiAn.Com.Cn Inc. 寰耽

快速回复 返回顶部 返回列表