- 博客(3)
- 收藏
- 关注
原创 C++链接的那些事
第一阶段是编译源文件,一旦我们把文件编译好,就需要通过一个叫做链接的过程,现在链接的主要工作是找到每个符号和函数在哪里,并把他们链接起来。所以如果我们决定把我们的程序分割成多个C++文件,我们需要一种方法把这些文件连接在一起成一个项目,而这就是链接器的主要目的和要做的事情。如果我们能告诉编译器,嘿这个Multiply函数,我只会在这个文件中使用它,不会在其他文件中使用它,我们可以去掉这种链接的必要性,因为Multiply从来不会被调用,也就是从不需要调用log函数,可以通过一个方法做到。
2024-09-15 18:26:31 446
原创 C++编译器的那些事
就是这样,他只是一个文本文件,然后我们需要一些将文本转换为实际应用程序的方法,我们的计算机可以运行。从文本形式到实际可执行的二进制文件,我们基本上有两个主要的操作需要进行,其中一个叫做编译,另外一个被称为链接。基本上是这样,现在我们有了这些obj文件,我么可以将它们链接成一个包含所有内容的可执行文件中,可执行文件是包含了需要运行的机器代码。,这段代码就是实际的机器(我们的CPU)将执行的代码,我们还得到了其他各种数据,比如一个储存所有常量、变量的地方。,就是我们代码的一种表示,但是是抽象的语法树。
2024-09-14 21:42:27 312
原创 C++编译 链接 执行那些事
< 叫做重载运算符 ,可以把他理解为一个函数,另一层含义是将字符串hello world推送的cout流中,然后打印到终端,然后推送一个行结束符endl,告诉终端调到下一行cin.get()函数是等待我们按下enter键,在前往下一句代码之前等待,这个时候程序暂时执行,直到我们按下回车键之后,程序继续运行下一行,但没有了,所以程序返回0,意味着代码执行结束。实际是你有一些C++的源文件,然后将这些源文件给到编译器,编译器将其转成二进制的东西,二进制的东西可能是某种库,或者是可执行的程序。
2024-09-14 11:27:09 907 1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人