DAY12

发布时间:2023年12月21日

问题一:C++从代码到可执行二进制文件的过程及其特点

1.预编译阶段

1.将所以的#define删除,展开所有的宏定义

2.处理所有的条件预编译指令?????这啥

3.处理所有的#include预编译指令,将被包含的文件插入到预编译指令的位置

4.删除所有的注释

5.添加行号、文件名标识??????

2.编译阶段

检查所有的语法、词法、语义是否错误

代码优化

目标代码生成-->生成汇编代码

目标代码优化

3.汇编

将汇编代码转化为机械可执行的指令

4.链接

将不同源文件的目标文件进行链接,生成一个可执行程序

问题二:面向对象的三大特征

1.封装

2.继承

3.多态

问题三:C++中访问权限有哪些,如何使用

1.public公有修饰符,作用域是类内成员函数、子类和对象

2.protected受保护的,作用域类内成员函数、子类

3.private私有的,作用域类内函数

class A{
 public:
 ? ?A(){
    }
 ? ?~A(){
    }
 private:
 ? ?int a;
 protected:
 ? ?int c;
};

问题四:宏函数是什么?如何定义?又如何使用?

1.宏函数本身不是函数,他只是一个简单的文本替换的过程,省去函数压栈,返回值的过程,从而提高了效率。

2.宏函数的定义和使用

#include <iostream>
?
using namespace std;
?
#define div(x,y) x/y
int main() {
    int a, b;
    cin >> a >> b;
    cout<<div(a, b)<<endl;
    return 0;
}

注意宏函数的定义不一定后面非得没有分号,加上也可以,但是如果宏上加;了要注意调用宏函数进行文本替换时候别出错!

文章来源:https://blog.csdn.net/m0_75178021/article/details/135133194
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。