C++语言相关的常见面试题目(一)

  1. const关键字的作用

答:

省流:(1)定义变量,主要为了防止修改

(2) 修饰函数参数:防止在函数内被改变

(3)修饰函数的返回值

(4)修饰类中的成员函数

  1. Static 关键字的作用

省流:可以修饰变量和函数。在函数、模块和类中都可以使用。

  1. 引用和指针的区别

省流:

(1)区别:指针可以初始化也可以不初始化,也可以为空,指针是一个对象。引用必须初始化不能为空,引用是对象的别名,没有实际地址。

(2)作用:共同作用:传递参数,避免对对象和数据的复制;指针还能配合虚函数实现多态和代码的复用

4 如何避免野指针

省流:创建指针时,指针要么初始化为空,要么指向一个对象;使用指针操作内存进行赋值检查是否为空;new malloc分配内存后检查指针是否为空;释放内存后指针置空。

  1. maclloc、free、new、delete的区别

省流:这个省不了一点

  1. extern关键字的作用

省流:这个不用省流了吧

  1. 简述strcpy、sprintf和memcpy的区别?

省流:strcpy专用于字符串复制,sprintf用于格式化输出到字符串,而memcpy则是通用的内存块复制函数。

  1. C/C++ 中类型转换以及使用场景

省流:总结就挺省流的

  1. C++什么时候生成默认构造函数

省流:(1)类内部的成员类提供默认构造函数

(2)类继承的基类提供了默认的构造函数

(3) 类内定义了虚函数

(4)类使用了虚继承

  1. C++什么时候生成默认拷贝构造函数

省流:(1)未定义拷贝构造函数

(2)类内的成员类有默认的拷贝构造函数

(3)类继承的基类有默认拷贝构造函数,或者基类中有虚函数

(4)类中包含虚函数

  1. c++什么是深拷贝?什么是浅拷贝?

共同点:基本数据类型逐个拷贝

不同点:浅拷贝只会复制动态成员的地址,新旧对象的动态成员指向同一块内存;深拷贝会复制动态成员指向的内存,新旧对象的动态成员指向不同的内存,虽然数据一样但是互不影响

这是一条吃饭博客,由挨踢零声赞助。学C/C++就找挨踢零声,加入挨踢零声,面试不挨踢!

相关推荐
师夷长技以自愈6 分钟前
第 3 讲:多 Agent——Supervisor 分诊 + 专职 Worker
面试
_冷眸_7 分钟前
Python 调用大模型 API:最小请求、Base URL 和 401/404 排查
开发语言·人工智能·python
niucloud-admin18 分钟前
NIUCLOUD PHP SAAS上门家政使用文档:服务保障
java·开发语言·php
AI的探索之旅30 分钟前
97 个 OpenCV 实例(三十七):二维码识别,一张图四个码的陷阱
c++·opencv·计算机视觉
怕浪猫31 分钟前
我有个朋友,工作八年,公司从 300 人减到 80 人
面试·程序员
熊猫钓鱼>_>44 分钟前
鸿蒙 PC 三方库适配复盘:libfvad 1.0 —— 把 WebRTC VAD 做成能装进采集链路的静态库
服务器·开发语言·华为·harmonyos·openharmony·适配·鸿蒙pc
考研保研资料分享1 小时前
2024财会跨保北大金融科技:三场笔面试与经管法混申复盘
科技·面试·金融
Ai-_Man1 小时前
Coze扣子还是不可以导出左侧所有对话,只能点进去单条内容导出,方法不对吗?
开发语言·人工智能·ai·小程序·1024程序员节
UIU1141 小时前
P16237 [蓝桥杯 2026 省 B] 应急布线
数据结构·c++·算法·蓝桥杯
raindayinrain1 小时前
c++设计模式
开发语言·c++·设计模式