20220823 c++

 常见C++面试题,大厂经典C++面试题 - 知乎

C++常见面试题总结_c++面试题_Cpp编程小茶馆的博客-CSDN博客

C/C++后台开发面试重点知识 | 编程指北

1、explicit Vehicle_Multi_Classfication();

C++中的explicit关键字只能用于修饰只有一个参数的类构造函数, 它的作用是表明该构造函数是显示的, 而非隐式的, 跟它相对应的另一个关键字是implicit, 意思是隐藏的,类构造函数默认情况下即声明为implicit(隐式

2、~Vehicle_Multi_Classfication()

用在类中的析构函数之前,表示该函数是析构函数

析构函数(destructor) 与构造函数相反,当对象结束其生命周期,如对象所在的函数已调用完毕时,系统自动执行析构函数。析构函数往往用来做“清理善后” 的工作(例如在建立对象时用new开辟了一片内存空间,delete会自动调用析构函数后释放内存)。

类的析构函数是类的一个成员函数,名字由波浪号加类名构成,执行与构造函数相反的操作:释放对象使用的资源,并销毁非static成员。

3、private

重要的不希望外部访问的成员变量定义为私有成员

4、&operator

简单来说就是operator 返回的是这个值,而&operator返回的是这个的地址(引用)。

c++重载操作符,operator 与&operator_你的瓦刀的博客-CSDN博客_&operator=

5、&

C++引用详解 - zero516cn - 博客园

6、pragma once

#pragma once用法总结 - 世纪强风 - 博客园

7、private、public、protected_Hello,小高同学的博客-CSDN博客_protected private public

8,​​​​​​C++ namespace_kjl167的博客-CSDN博客_c++ namespace

9,C++中的.h,cpp以及.hpp文件_superhoner的博客-CSDN博客_hpp cpp

10、指针引用传入参数

https://www.cnblogs.com/lutixiagit/p/16702966.html

11. make 和make install 

百度安全验证

12. Cmake和make

5分钟理解make/makefile/cmake/nmake - 知乎

  

1、下载源码sources

2、cmake 

生成批处理文件,makefile

3、make编译

4、可执行文件

 

面试题:

1、智能指针的原理

(215条消息) C++智能指针原理_吃橘子容易上火的博客-CSDN博客_c++智能指针原理
2、多态

(215条消息) C++多态_The Temple的博客-CSDN博客_c++多态


3、定义常量

  • C++ 语言定义了一些头文件,这些头文件包含了程序中必需的或有用的信息。上面这段程序中,包含了头文件 <iostream>
  • 下一行 using namespace std; 告诉编译器使用 std 命名空间。命名空间是 C++ 中一个相对新的概念。

在 C++ 中,有两种简单的定义常量的方式:

  • 使用 #define 预处理器。例子:#define LENGTH 10
  • 使用 const 关键字。       例子:const int LENGTH = 10;

4、存储类

a、static

指示编译器在程序的生命周期内保持局部变量的存在,而不需要在每次它进入和离开作用域时进行创建和销毁。

b、extern 存储类

用于提供一个全局变量的引用,全局变量对所有的程序文件都是可见的

c、mutable 

说明符仅适用于类的对象

d、thread_local

使用 thread_local 说明符声明的变量仅可在它在其上创建的线程上访问。

e、auto 关键字用于两种情况:声明变量时根据初始化表达式自动推断该变量的类型、声明函数时函数返回值的占位符。

5、数组、数组指针

int n[ 10 ]; // n 是一个包含 10 个整数的数组

double *p;
double runoobAarray[10];

p = runoobAarray;

指针和数组是密切相关的。事实上,指针和数组在很多情况下是可以互换的。

把 var[2] 赋值为 500:

*(var + 2) = 500;

6、指针*

指针是一个变量,其值为另一个变量的地址,即,内存位置的直接地址。就像其他变量或常量一样,您必须在使用指针存储其他变量地址之前,对其进行声明。

7、引用&

引用变量是一个别名,也就是说,它是某个已存在变量的另一个名字。一旦把引用初始化为某个变量,就可以使用该引用名称或变量名称来指向变量。

8.C++ 引用 vs 指针

C++对引用和指针的理解、应用_c++ 指针和引用的使用场景_Nelson_hehe的博客-CSDN博客

C++中的&(引用与地址)_c++取地址和引用_南陵花神的博客-CSDN博客

引用很容易与指针混淆,它们之间有三个主要的不同:

  • 不存在空引用。引用必须连接到一块合法的内存。
  • 一旦引用被初始化为一个对象,就不能被指向到另一个对象。指针可以在任何时候指向到另一个对象。
  • 引用必须在创建时被初始化。指针可以在任何时间被初始化。

9、include <vector>

动态数组,动态占用空间,动态释放空间

10、动态内存

了解动态内存在 C++ 中是如何工作的是成为一名合格的 C++ 程序员必不可少的。C++ 程序中的内存分为两个部分:

  • 栈:在函数内部声明的所有变量都将占用栈内存。
  • 堆:这是程序中未使用的内存,在程序运行时可用于动态分配内存。

double* pvalue = NULL; // 初始化为 null 的指针

pvalue = new double; // 为变量请求内存

11、命名空间

您可以使用 using namespace 指令,这样在使用命名空间时就可以不用在前面加上命名空间的名称。

using 指令也可以用来指定命名空间中的特定项目。例如,如果您只打算使用 std 命名空间中的 cout 部分,您可以使用如下的语句:

using std::cout;

12、搭建环境

(200条消息) VsCode安装和配置c/c++环境(超完整,小白专用)_LoveArduinos的博客-CSDN博客_vscode配置c/c++环境

(200条消息) VScode搭建Opencv(C++开发环境)_河旬的博客-CSDN博客_vscode opencv

(200条消息) vscode配置opencv_Wddfh_frw的博客-CSDN博客_vscode配置opencv

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值