#include .h文件和.cpp文件有什么区别 30
问题:假如我定义了一个类#include<iostream>classT{public:voidshow(){cout<<"hello"<<endl;};也可以写一个头文...
问题:假如我定义了一个类
#include <iostream>
class T{
public:void show(){
cout<<"hello"<<endl;
};
也可以写一个头文件加上类的实现。头文件名称为T2.h我在main函数中
#include "T2.h"
和
#include "T.cpp"
有什么区别。为什么要写一个.h文件。不写不是可以吗!
不明白。那位给解释一下。多多给分,追加50分
};
"2. 一般没有去include cpp文件的, include有两种:
include <xxx.h>"
为什么不直接引 cpp文件呢。想java一样。直接引类。有什么不妥吗?? 展开
#include <iostream>
class T{
public:void show(){
cout<<"hello"<<endl;
};
也可以写一个头文件加上类的实现。头文件名称为T2.h我在main函数中
#include "T2.h"
和
#include "T.cpp"
有什么区别。为什么要写一个.h文件。不写不是可以吗!
不明白。那位给解释一下。多多给分,追加50分
};
"2. 一般没有去include cpp文件的, include有两种:
include <xxx.h>"
为什么不直接引 cpp文件呢。想java一样。直接引类。有什么不妥吗?? 展开
4个回答
展开全部
个人观点,仅供参考 :)
include是模块编程里常用的,比如你在func1.cpp中定义了一个函数xxx,xxx声明在func1.h里,那你在func2.cpp中需要用到函数xxx,则需要把func1.h这个头文件include进来一起编译。
你的code里#include<iostream>是C++实现,C++中做了封装,所以后面不需要带.h。但有时候还需要加上以行using namespace std; 。
1. T.cpp 是C++文件,cpp = c plus plus
2. 一般没有去include cpp文件的, include有两种:
include <xxx.h>
在包含文件目录中去查找(包含目录是由用户在设置环境时设置的),而不在源文件目录去查找.
include "xxx.h"
使用双引号则表示首先在当前的源文件目录中查找,若未找到才到包含目录中去查找。
也就是说,一般自带的库函数用<>,自己定义的跟源文件放在一起的用""
==============================
补充:
个人认为:cpp是源文件,自己内部实现的全在cpp中的,但这其中只有部分api其他地方需要用到;
因此就只需要将利用率高的api声明在.h里面,然后包含.h文件。
由于.h文件比较简单,故能大大提高链接编译的效率
个人观点,也不知道是否正确。
include是模块编程里常用的,比如你在func1.cpp中定义了一个函数xxx,xxx声明在func1.h里,那你在func2.cpp中需要用到函数xxx,则需要把func1.h这个头文件include进来一起编译。
你的code里#include<iostream>是C++实现,C++中做了封装,所以后面不需要带.h。但有时候还需要加上以行using namespace std; 。
1. T.cpp 是C++文件,cpp = c plus plus
2. 一般没有去include cpp文件的, include有两种:
include <xxx.h>
在包含文件目录中去查找(包含目录是由用户在设置环境时设置的),而不在源文件目录去查找.
include "xxx.h"
使用双引号则表示首先在当前的源文件目录中查找,若未找到才到包含目录中去查找。
也就是说,一般自带的库函数用<>,自己定义的跟源文件放在一起的用""
==============================
补充:
个人认为:cpp是源文件,自己内部实现的全在cpp中的,但这其中只有部分api其他地方需要用到;
因此就只需要将利用率高的api声明在.h里面,然后包含.h文件。
由于.h文件比较简单,故能大大提高链接编译的效率
个人观点,也不知道是否正确。
展开全部
为了隐藏类的实现
使用者只能得到类的接口 也就是.h文件 由此可以知道类有什么成员、能做什么事情
但是不能得到类的实现 也就是.cpp 也就是类的源代码
使用者只能得到类的接口 也就是.h文件 由此可以知道类有什么成员、能做什么事情
但是不能得到类的实现 也就是.cpp 也就是类的源代码
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
说白了就是为了充分体现面向对象的思想
使得使用者只能得到类的接口 也就是.h 也就是能做什么
但是不能得到类的实现 也就是.cpp 也就是怎么做
很多时候函数的实现被做成.lib或.dll的形式来使用 我们是无法直接得到其文本代码的
使得使用者只能得到类的接口 也就是.h 也就是能做什么
但是不能得到类的实现 也就是.cpp 也就是怎么做
很多时候函数的实现被做成.lib或.dll的形式来使用 我们是无法直接得到其文本代码的
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |