当前位置: 首页 > news >正文

成都网站建设网络公司网站建设营销推广

成都网站建设网络公司,网站建设营销推广,青岛市建设工程质量安全监督站官方网站,网页设计的ppt展示优势介绍 将C代码分为头文件(.h)和源文件(.cpp)的做法有以下几个好处: 模块化和代码组织:将函数和类的声明(包括函数原型、类的成员和属性等)放在头文件中,将函数和类的…

优势介绍

将C++代码分为头文件(.h)和源文件(.cpp)的做法有以下几个好处:

模块化和代码组织:将函数和类的声明(包括函数原型、类的成员和属性等)放在头文件中,将函数和类的实现(具体的函数逻辑、成员函数的定义等)放在源文件中。这种分离有助于对代码进行模块化和组织,使代码更加清晰和可维护。头文件可以作为接口文档,给其他开发人员提供使用代码的相关信息。

可重用性:将代码逻辑和实现分离可以增加代码的可重用性。头文件中的声明可以被多个源文件引用,这样不同的源文件可以共享相同的函数和类的定义,避免了重复编写相同的代码。这对于开发大型项目或者多人合作开发非常有用,可以提高开发效率。

编译效率:当头文件被多个源文件包含时,编译器只需编译一次头文件即可,然后在编译不同的源文件时,只需链接相应的目标文件即可。这样可以提高编译效率,减少编译时间。如果将所有代码都写在一个文件中,每次修改都需要重新编译整个文件,非常耗时。

隐藏实现细节:头文件中只包含函数和类的声明,并不包含实现的细节,这样可以隐藏具体的实现逻辑。只有源文件中包含了实现的代码,其他文件无法直接访问和修改具体的实现,从而保护了代码的安全性和稳定性。

总结起来,将C++代码分为头文件和源文件可以提高代码的可维护性、可重用性和编译效率,同时也可以隐藏实现细节,保护代码的安全性。这是一种良好的编程实践,尤其适用于大型项目或者多人协作开发的情况下。

举个栗子

假设在分离cpp和h文件之前,我们把所有写在cpp中,得到一下文件:

#include<iostream>
using namespace std;class Pencil{
public:void setSize(int size){p_size=size;}void inform(){cout<<"这是一个铅笔"<<endl;}int get_size(){return p_size;}
private:int p_size;
};
class Book{
public:void setSize(int size){b_size=size;}void inform(){cout<<"这是一本书"<<endl;}int get_size(){return b_size;}
private:int b_size;
};
class SchoolBag{
public:void set_info(int p_size,int b_size){p.setSize(p_size);b.setSize(b_size);}void show_info(){p.inform();cout<<"size="<<p.get_size()<<endl;b.inform();cout<<"size="<<b.get_size()<<endl;}
private:Pencil p;Book b;
};
int main()
{SchoolBag s;s.set_info(10,100);s.show_info();return 0;
}

分离之后,会得到:

pencil.h pencil.cpp book.h book.cpp school.h school.cpp main.cpp

分别写在下面

pencil.h:

#pragma once
#include<iostream>
using namespace std;
class Pencil {
public:void setSize(int size);void inform();int get_size();
private:int p_size;
};

book.h

#pragma once
#include<iostream>
using namespace std;
class Book {
public:void setSize(int size);void inform();int get_size();
private:int b_size;
};

schoolbag.h

#pragma once
#include "pencil.h"
#include "book.h"
class SchoolBag {
public:void set_info(int p_size, int b_size);void show_info();
private:Pencil p;Book b;
};

pencil.cpp

#include "pencil.h"
void Pencil::setSize(int size)
{p_size = size;
}
void Pencil::inform()
{cout << "这是一个铅笔" << endl;
}
int Pencil::get_size()
{return p_size;
}

book.cpp

#include "book.h"
void Book::setSize(int size)
{b_size = size;
}
void Book::inform()
{cout << "这是一本书" << endl;
}
int Book::get_size()
{return b_size;
}

schoolbag.cpp

#include "schoolbag.h"
void SchoolBag::set_info(int p_size, int b_size)
{p.setSize(p_size);b.setSize(b_size);
}
void SchoolBag::show_info()
{p.inform();cout << "size=" << p.get_size() << endl;b.inform();cout << "size=" << b.get_size() << endl;
}

main.cpp

#include "schoolbag.h"int main()
{SchoolBag s;s.set_info(10, 100);s.show_info();return 0;
}

运行方法

注意运行的时候一定要把上面的七个文件进行“编译链接”比如放在visual studio里面之后,运行main可以自动实现上述功能。如果运行在dev cpp里面不编译链接,是无法运行的:

http://www.dinnco.com/news/71720.html

相关文章:

  • 字体中国设计网惠州seo外包公司
  • 广州天河区有什么好玩的地方优化器
  • 市场营销方案500字seo搜外
  • 怎么做公众号网站石家庄seo排名公司
  • 注册软件开发公司需要什么条件东莞市网络seo推广服务机构
  • 网页设计介绍说明太原seo建站
  • ppt做会动彩字网站360指数查询
  • 域名网站备案管理系统全网关键词云怎么查
  • 通州网站建设电话seo百科
  • 做英语quiz的网站网站百度seo关键词优化
  • 广东地区建网站的公司抖音广告代运营
  • cod单页建站工具得物app的网络营销分析论文
  • 网站怎么做404页面的跳转樱桃磁力bt天堂
  • 万州网站建设多少钱提供seo服务
  • 做自己的网站的好处网站换友链平台
  • 网站制作公司北京网站建设公司哪家好百度快速优化推广
  • 微信营销软件网站建设百度数据中心
  • 河南省近期新闻热点网站建设与优化
  • 西安网站建设公司十强google关键词查询工具
  • wordpress 添加视频优化大师的优化项目有哪7个
  • 旅游网站建设设计大连百度推广公司
  • ecshop下载网站优化排名金苹果下拉
  • tomcat做网站属于什么seo最好的工具
  • 网站没有内容 备案能成功吗seo超级外链工具免费
  • 设计网站首页天津seo网络营销
  • 医院网站建设 招标百度网址入口
  • 广东哪家网站建设后台管理便捷深圳百度推广电话
  • 自己创建网站怎么得流量钱厦门seo排名优化公司
  • 品牌网站建设 细致磐石网络外包公司到底值不值得去
  • 枣庄三合一网站开发电商运营培训哪个机构好