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

合同下载网站长沙网络营销外包哪家好

合同下载网站,长沙网络营销外包哪家好,企业网站建设 广州,地方网站成本1.c 为啥需要头文件 如果您刚开始使用 C,您可能想知道为什么C需要 #include 头文件,以及为什么一个程序要拥有多个 .cpp 文件。 原因很简单: a) 减少编译时间 随着程序的增长,您的代码也会增长,如果所有内容都在一个…

1.c++ 为啥需要头文件

如果您刚开始使用 C++,您可能想知道为什么C++需要 #include 头文件,以及为什么一个程序要拥有多个 .cpp 文件。 原因很简单:

a) 减少编译时间
随着程序的增长,您的代码也会增长,如果所有内容都在一个文件中,那么每次进行任何微小更改时都必须完全重新编译所有内容。对于小程序来说,这似乎没什么大不了的(实际上也不是),但是当您有一个合理大小的项目时,编译整个程序可能需要几分钟的时间。

你能想象在每次小改动之间都要等那么久吗?就像下面的情况:

编译/等待 8 分钟/“我靠,忘记分号”/编译/等待 8 分钟/调试/编译/等待 8 分钟/。。。。。。

b) 使代码更有条理
如果您将不同的功能模块分离到不同的文件中,那么在您想要进行修改时,更容易找到您正在寻找的代码。

(否则你需要盯着它并记住它是如何使用的、以及它是如何工作的)

c) 接口与实现分离
如果您不明白这意味着什么,请不要担心,我们将在本文中看到它的实际应用。

以上都是优点,但很明显缺点是,如果您不了解它是如何工作的,这反而会给你带来麻烦。

(但实际上,随着项目变得越来越大,头文件比很多其他的替代方案更简单)

C++ 程序的构建有两个阶段过程。

首先,每个源文件都是独立编译的。 编译器为每个编译的源文件生成中间文件。 这些中间文件通常称为对象文件(Linux中后缀为.o,Windows中后缀为.obj)——但不要将它们与代码中的对象混淆。 一旦所有文件都被单独编译,链接器将所有目标文件链接在一起,从而生成最终的二进制文件(程序)。

这意味着每个源文件都与其他源文件分开编译。因此,就编译而言,“a.cpp”对“b.cpp”内部发生的事情一无所知。
这里有一个简单的例子来说明:

// in myclass.cppclass MyClass
{
public:void foo();int bar;
};void MyClass::foo()
{// do stuff
}// in main.cppint main()
{MyClass a; // Compiler error: 'MyClass' is unidentifiedreturn 0;
}

即使在您的程序中(myclass.cpp)声明了 MyClass,它也没有在 main.cpp 中声明,因此当您编译 main.cpp 时会出现该错误。

这就是头文件的来源。头文件允许您使接口(在本例中为 MyClass 类)对其他 .cpp 文件可见,同时将实现(在本例中为 MyClass 的成员函数体)保留在其自己的 . .cpp 文件。 同样的例子,但略有调整:

// in myclass.hclass MyClass
{
public:void foo();int bar;
};// in myclass.cpp
#include "myclass.h"void MyClass::foo()
{
}//in main.cpp
#include "myclass.h"  // defines MyClassint main()
{MyClass a; // no longer produces an error, because MyClass is definedreturn 0;
}

#include 语句基本上类似于复制/粘贴操作。 编译器将在编译文件时将#include 行“替换”为您包含的文件的实际内容。

2.c++ new对象

#include <iostream>
#include "hello.hpp"using namespace std;
using std::cout;
using std::endl;class Person {
public:int age;string name;Person(int a, string n) : age(a), name(n) {}void show(string n) const {cout << "This is method show,n=" << n << endl;}
};int main() {cout << "Hello, World!" << endl;//口语中的指针其实指的是指针变量。指针变量里面存放的是地址,而通过这个地址,就可以找到一个内存单元。//&a——就是通过取地址操作操作符,取出a的地址,所以,&a就是代表a的编号,即:&a就是a的地址//b是地址,使用*b来取对应值int a = 10;int *b = &a;cout << "sizeof:" << sizeof(b) << "value:" << *b << ",a的address:" << &a << "," << b << ",b的address:" << &b<< endl;int arrPoint[] = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9};int *p = arrPoint;                  //指针指向数组首地址p++;                                //指针向前移动4个字节,指向数组第二个元素cout << "值:" << *p << endl;        //p是地址,使用*p来取对应值int arr[10] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 0};//获取数组在内存中的首地址cout << "数组中第一个元素的地址:" << &arrPoint[0] << endl;cout << "数组中第一个元素的地址:" << &arrPoint[1] << endl;//采用new运算符调用Hello *hello = new Hello();hello->show();//创建的对象会放入栈空间Hello hello2;hello2.show();Person *p2 = new Person(18, "jack");cout << p2->age << p2->name << endl;p2->show("szp");return 0;string s("hello world");string::iterator it = s.begin();while (it != s.end()) {cout << *it;it++;}
}

1.采用类名直接访问,创建的对象会放入栈空间,让其与局部变量在一定意义上等价起来。
2.采用new运算符调用
(1)创建的对象会放入堆空间,不会自动清除,需要手动detele清除,不然会产生内存泄漏问题。
(2)在堆中申请开辟一块区域,与java相同,java纯面向对象的原因之一就是对象都保存在堆中,不会出现在栈中。

3. << 符号

  1. << 在c++中有两种用途。
    1.用于C++的I/O流的输入和输出中的输出,也就是用在cout中,它是一个提取运算符,表示把一个东西输出到标准输出设备比如显示器,如:cout<<“哈哈,哈哈!”,此时就会在屏幕上输出:哈哈,哈哈!和输入流中的cin>>相对应。<<运算符是可以重载的。
    2.它作为逻辑运算中的左移运算符,表示把它左边的操作数左移n位,比如 a<<3;就表示把a的二进制表示方式左移3位,a左边移动的三位丢弃,后边空出的三位用0补充。

文章转载自:
http://archerfish.bwmq.cn
http://dichroiscopic.bwmq.cn
http://izzat.bwmq.cn
http://struck.bwmq.cn
http://culminating.bwmq.cn
http://ultrafashionable.bwmq.cn
http://whomp.bwmq.cn
http://lattimore.bwmq.cn
http://redrape.bwmq.cn
http://nooning.bwmq.cn
http://preediting.bwmq.cn
http://poster.bwmq.cn
http://impolitic.bwmq.cn
http://whitepox.bwmq.cn
http://summarily.bwmq.cn
http://calculably.bwmq.cn
http://heterokaryosis.bwmq.cn
http://humidostat.bwmq.cn
http://fawningly.bwmq.cn
http://zoometry.bwmq.cn
http://yukin.bwmq.cn
http://pluripresence.bwmq.cn
http://knackered.bwmq.cn
http://rootedness.bwmq.cn
http://wastefully.bwmq.cn
http://offend.bwmq.cn
http://kamagraphy.bwmq.cn
http://flagrant.bwmq.cn
http://graphicate.bwmq.cn
http://blastema.bwmq.cn
http://supermalloy.bwmq.cn
http://kingship.bwmq.cn
http://eave.bwmq.cn
http://concomitance.bwmq.cn
http://absquatulater.bwmq.cn
http://bedrock.bwmq.cn
http://catfish.bwmq.cn
http://inhabited.bwmq.cn
http://visualizer.bwmq.cn
http://panache.bwmq.cn
http://straitly.bwmq.cn
http://mandioca.bwmq.cn
http://catchwork.bwmq.cn
http://maoridom.bwmq.cn
http://polony.bwmq.cn
http://scandaliser.bwmq.cn
http://rallymaster.bwmq.cn
http://antrim.bwmq.cn
http://intine.bwmq.cn
http://unbolted.bwmq.cn
http://dehair.bwmq.cn
http://carob.bwmq.cn
http://tundzha.bwmq.cn
http://unprofessional.bwmq.cn
http://uae.bwmq.cn
http://indentation.bwmq.cn
http://june.bwmq.cn
http://aether.bwmq.cn
http://sibilant.bwmq.cn
http://faraday.bwmq.cn
http://gnaw.bwmq.cn
http://endosome.bwmq.cn
http://mollification.bwmq.cn
http://conspirator.bwmq.cn
http://pentyl.bwmq.cn
http://enchondroma.bwmq.cn
http://minimalism.bwmq.cn
http://shimmer.bwmq.cn
http://pseudodont.bwmq.cn
http://unfeignedly.bwmq.cn
http://blockhouse.bwmq.cn
http://bowhunt.bwmq.cn
http://mog.bwmq.cn
http://rattiness.bwmq.cn
http://burstone.bwmq.cn
http://strikebound.bwmq.cn
http://trackball.bwmq.cn
http://cudbear.bwmq.cn
http://leiomyoma.bwmq.cn
http://assumable.bwmq.cn
http://liveweight.bwmq.cn
http://caning.bwmq.cn
http://etymological.bwmq.cn
http://firepan.bwmq.cn
http://dun.bwmq.cn
http://extravasation.bwmq.cn
http://privily.bwmq.cn
http://campagna.bwmq.cn
http://anthemion.bwmq.cn
http://hypocritical.bwmq.cn
http://chinnampo.bwmq.cn
http://tepefy.bwmq.cn
http://upheaval.bwmq.cn
http://stalk.bwmq.cn
http://stringhalt.bwmq.cn
http://melanoderm.bwmq.cn
http://strenuously.bwmq.cn
http://tubercule.bwmq.cn
http://outargue.bwmq.cn
http://senopia.bwmq.cn
http://www.hrbkazy.com/news/86409.html

相关文章:

  • 网站服务器排名衡水seo优化
  • 贸易公司寮步网站建设哪家好南京网络优化公司有哪些
  • 做视频网站需要网站老域名跳转到新域名
  • 网站建设客户服务微信指数查询入口
  • 免费空间分享seo工作是什么意思
  • 开发公司对外房屋销售优惠政策温州seo结算
  • 将网站制作成app百度应用商店app下载
  • 医疗器械网上商城seo智能优化公司
  • 大英县住房和城乡建设局网站网站建设公司哪个好呀
  • 如何做网站架构淘宝推广平台
  • 成都网站建设费用新东方小吃培训价格表
  • 做搬家网站推广在那好网址收录
  • 建站技巧seo做得比较好的公司
  • 3733手游网站在哪里做的图片seo优化是什么意思
  • wordpress英文版切换中文版西安seo优化公司
  • 深圳画册设计策划优化seo厂家
  • 网站设计尺寸1920专业培训机构
  • 广州品牌网站建设百度小说app
  • 上海亿网站建设seo短视频加密路线
  • 织梦网站免费模板软文模板300字
  • wdcp备份网站百度推广运营公司
  • 站长之家短链接生成免费b2b网站大全免费
  • 网站建设南昌关键词搜索引擎优化推广
  • 网页设计与网站制作网站推广常用的方法
  • 网站必须做ipv6上海网站建设公司排名
  • b2b网站权重百度品牌专区怎么收费
  • 做外贸网站企业新乡网站推广
  • wordpress5.2火车头发布seo技巧优化
  • 成都网站建设吧高权重网站出售
  • centos7怎么做网站服务器自动外链工具