当前位置:网站首页>百日刷题挑战--错题01day
百日刷题挑战--错题01day
2022-08-10 16:39:00 【不虚此行-Rui】
1.在 32 位编译器上,设有定义
1
char*str1 ="Hello", str2[] ="Hello";则以下语句
1
printf("%d %d",sizeof(str1),sizeof(str2));的输出结果是(6,6)
解析:
str1是指针 大小为4字节
str2是字符数组 大小为6个字节(包含/0);
2.在C++中,定义结构体类型struct时,不能定义成员函数,只有class可以定义成员函数。
解析:错误 c语言中struct不可以定义成员函数,c++可以,包括继承(面试题 : struct和class的区别)
3.下列程序输出什么?
#include <iostream> using namespace std; class A { public: A() { cout << "1"; } A(A &a) { cout << "2"; } virtual ~A() { cout << "3"; } }; class B: public A { public: B() { cout << "4"; } B(B &b) { cout << "5"; } ~B() { cout << "6"; } }; int main() { A *pa = new B(); delete pa; return 0; }答案: 1 4 6 3
解析:在继承中构造和析构顺序
B继承了A,所以先构造A再构造B,然后先析构B在A (这里没有拷贝)
3.下列表达式结果()----strs *ptrs分别是?
1
2
3
4
5
6
std::string str1("trend");
std::string str2("micro");
std::string& strs = str1;
std::string* ptrs = &str1;
strs = str2;
ptrs = &str2;strs="micro" *ptrs="micro"
解析:strs是str1的别名 strs=str2 相当于 str1=str2; (str1的内容也被修改)
ptrs指针指向str2可以被改变(面试题:引用和指针的区别)
在32位系统环境,编译选项为4字节对齐,那么sizeof (A)和sizeof (B)是______。
1
2
3
4
5
6
7
8
9
10
11
12
13
structA {
inta;
shortb;
intc;
chard;
};
structB {
inta;
shortb;
chard;
intc;
};答案16 12
解析: 结构体第一个成员从偏移量0开始,之后的成员变量从对齐数的整数倍开始
最后的结果也是对齐数的整数倍
面试题:结构体对齐方式
关于纯虚函数和抽象类的描述中,( )是错误的。
A.纯虚函数是一种特殊的虚函数,它没有具体的实现; B.抽象类是指具有纯虚函数的类; C.一个基类声明有纯虚函数,该基类的派生类一定不再是抽象类; D.抽象类只能作为基类来使用,其纯虚函数的实现由派生类给出;答案:c
解析:
含有纯虚函数的类是抽象类,不能生成对象,只能派生.派生的类的虚函数没有被实现,那么他的派生类还是抽象类,。如果派生类中给出了基类纯虚函数的实现,则该派生类就不再是抽象类了
假设C语言程序里使用malloc申请了内存,但是没有free掉,那么当该进程被kill之后,操作系统会()
正确答案: D 你的答案: A (错误)
A.内存泄露B.segmentation faultC.core dumpD.以上都不对内存泄漏只发生在程序运行中
关于C++中的友元函数说法正确的是()
正确答案: B C 你的答案: A B C (错误)
A.友元函数需要通过对象或指针调用B.友元函数是不能被继承的C.友元函数没有this指针D.友元函数破环了继承性机制解析:友元函数不具有传递性,继承性,双向性
也不具有this指针,成员函数的概念
面试题:
struct和class的区别?
- struct默认访问权限public,class默认访问权限private
- 默认继承权限不同 struct默认继承权限public class默认继承权限private
结构体对齐方式
- 第一个成员在结构体偏移量为0的地址处;
- 其他成员变量要与自身类型的整数倍地址处对齐
- 结构体的总大小为对齐数(默认对齐数与成员类型最大值的最小值)的整数倍
- 如果出现嵌套情况,嵌套结构体对齐到最大对齐数的整数倍
引用和指针的区别
- 引用必须初始化,不能被更改,指针不必须初始化,可以被更改
- 指针可以指向空,不存在指向空值的引用
- 对引用操作就是对目标变量直接操作,指针则是对指向的变量的间接操作
边栏推荐
- 电力系统潮流计算(牛顿-拉夫逊法、高斯-赛德尔法、快速解耦法)【6节点 9节点 14节点 26节点 30节点 57节点】(Matlab代码实现)
- 险资又做LP,一出手40亿
- 【荣耀智慧服务】快捷服务开发指南
- 一张图快速了解 Istio 的 EnvoyFilter
- v-if指令:操作dom元素(标签)的显示与隐藏
- How to realize full backup and incremental backup of MySQL database
- 取Json中的数组进行遍历
- 被大厂面试官参考的Redis笔记,堪称Redis面试天花板
- 视频转gif怎样操作?1分钟在线视频转gif制作
- Gif动图怎么用视频做?一键在线完成视频转gif制作
猜你喜欢

开源生态与AI芯片的碰撞&Dragonfly基于P2P的镜像加速系统 | 第 39-40 期

C专家编程 第10章 再论指针 10.3 在锯齿状数组上使用指针

3 年 CRUD 从 8K 涨到 28K,谁知道这4个月我到底经历了什么?

Polling and the principle of webSocket and socket.io

网易云信亮相LiveVideoStackCon2022,解构基于WebRTC的开源低延时播放器实践

雷达人体存在感应器,人体感知控制应用,为客户提供真实的感知方案

如何将jpg图片变成gif?教你一分钟图片合成gif的方法

轮询以及webSocket与socket.io原理

v-for指令:根据数据生成列表结构

Quicker+沙拉查词使用
随机推荐
常用持续集成工具对比
分类常用的神经网络模型,深度神经网络主要模型
LeetCode-2. Add Two Numbers
C专家编程 第10章 再论指针 10.7 使用指针创建和使用动态数组
本地导入不报错,服务器端报错 No module named xxx
如何使用Swift Package插件生成代码
shell之正则表达式及三剑客awk命令
神经网络有哪些激活函数,卷积神经网络有哪些
家电巨头,不碰儿童生意
从宠爱到嫌弃,蒸发1500亿后,这家明星企业为何陨落?
Quicker+沙拉查词使用
requests库访问接口
Qt 绘图和绘图设备
#夏日挑战赛#【ELT.ZIP】啃论文俱乐部——学术科研方法论沉淀辑
CDF 图的含义
阿里工作7年,肝到P8就剩这份学习笔记了,已助朋友拿到10个Offer
训练一个神经网络要多久,神经网络训练时间过长
取Json中的数组进行遍历
leetcode:1137. 第 N 个泰波那契数
在Istio中,到底怎么获取 Envoy 访问日志?
