1.

初始化为NULL(0)的类指针可以安全的调用不涉及类成员变量的类成员函数而不出错,但是如果类成员函数中调用了类成员变量则会出错

2.

悄咪咪加一个注意点:

注意enum在c语言中是关键字 ,c语言对大小写比较敏感,所以ENUM是一个标识符,但不是关键字。

3.

#include<iostream>

using namespace std;

class TestClass{

char x;

public:

TestClass() { cout << 'A'; }

TestClass(char c) { cout << c; }

~TestClass() { cout << 'B'; }

};

int main() {

TestClass p1, *p2;

p2 = new TestClass('X');

delete p2;

return 0;

}

解析:

TestClass p1, *p2; //只为p1调用默认构造——A

p2 = new TestClass('X'); //调用构造函数,由p2指向——X

delete p2; //释放内存空间,p2所指实例调用析构函数——B

return 0; //程序结束,p1调用析构——B

4,5 两个还是比较混乱的 正在研究中

4.

单选:

下列 C 代码中,不属于未定义行为的有:

A: int i=0;i=(i++);

B: char *p=”hello”;p[1]=’E’

C: char *p=”hello”;char ch=*p++

D: int i=0;printf(“%d%d\n”,i++,i--)

5.

下面代码的输出是什么?

class A

{

public:

A()  {     }

~A() {    cout<<"~A"<<endl;   }

};

class B:public A

{

public:

B(A &a):_a(a)

{

}

~B()

{

cout<<"~B"<<endl;

}

private:

A _a;

};

int main(void)

{

A a;       //很简单,定义a的时候调用了一次构造函数

B b(a);

}

答案:

~B

~A

~A

~A

7.

假定CSomething是一个类,执行下面这些语句之后,内存里创建了____个CSomething对象。

CSomething a();

CSomething b(2);

CSomething c[3];

CSomething &ra = b;

CSomething d=b;

CSomething *pA = c;

CSomething *p = new CSomething(4);

解析:6个

CSomething a();// 没有创建对象,这里不是使用默认构造函数,而是定义了一个函数,在C++ Primer393页中有说明。

CSomething b(2);//使用一个参数的构造函数,创建了一个对象。

CSomething c[3];//使用无参构造函数,创建了3个对象。

CSomething &ra=b;//ra引用b,没有创建新对象。

CSomething d=b;//使用拷贝构造函数,创建了一个新的对象d。

CSomething *pA = c;//创建指针,指向对象c,没有构造新对象。

CSomething *p = new CSomething(4);//新建一个对象。

8.

假设所有变量均为整型,则表达式(a=2,b=5,b++,a+b)的值是____。

8

解析:

逗号表达式的求值顺序是从左向右依次计算用逗号分隔的各表达式的值,最

后一个表达式的值就是整个逗号表达式的值。所以表达式最后的值是a+b,但经过前面的

计算,此时a的值为2,b的值是6,所以最后的结果是8,应选择B。

9.

下面这个代码输出的是()

#include <iostream>

#include <vector>

using namespace std;

int main(void)

{

vector<int>array;

array.push_back(100);

array.push_back(300);

array.push_back(300);

array.push_back(300);

array.push_back(300);

array.push_back(500);

vector<int>::iterator itor;

for(itor=array.begin();itor!=array.end();itor++)

{

if(*itor==300)

{

itor=array.erase(itor);

}

}

for(itor=array.begin();itor!=array.end();itor++)

{

cout<<*itor<<"";

}

return 0;

}

100 300 300 500

解析:

vector::erase():从指定容器删除指定位置的元素或某段范围内的元素 
vector::erase()方法有两种重载形式 
如下: 
iterator erase(   iterator _Where); 
iterator erase(   iterator _First,   iterator _Last);

如果是删除指定位置的元素时: 
返回值是一个迭代器,指向删除元素下一个元素;

如果是删除某范围内的元素时:返回值也表示一个迭代器,指向最后一个删除元素的下一个元素;

在本题中,当 *itor==300成立时,删除第一个值为300的元素,同时itor指向下一个元素(即是第二个值为300的元素),

在for(;;itor++)执行itor,itor指向第三个值为300的元素,进入下一个循环

进入循环满足*itor==300,重复上面的过程,执行完循环,itor执行值为500的元素。

所有整个过程中,只删除了2个值为300的元素。

7-19晚牛客网刷题未知点、错题 集合相关推荐

  1. 牛客网刷算法题的输入输出(C++)

    内容简述 该篇文章将对牛客网刷题中关于输入输出的一些问题作一个总结.每年互联网公司的招聘都必不可少会有算法题,因此平时很多人都会去一些刷题网站进行刷题来学习.这里面用的比较多的刷题网站是leetcod ...

  2. 牛客网刷题记录 || 结构体和类

    这是牛客网刷题记录专栏第五篇博文,先给大家简单介绍一下牛客网,牛客网是一个集笔面试系统.题库.课程教育.社群交流.招聘内推于一体的优质网站,牛客网题库中包含几万道题目,注重通过边学边练的模式揽获编程人 ...

  3. 牛客网刷题之SQL篇:非技术快速入门39T

    导航 前序 一.简单的关键字练习 1-10 二.知识点复习之 ==运算符== 1.算数运算符 2.比较运算符 3.逻辑运算符 4.位运算符 三.10-28T 0.简单题总结 1. SQL18 ==分组 ...

  4. 2023年大年初一 —— 牛客网刷题经验分享~

    2023年大年初一 -- 牛客网刷题经验分享~

  5. 牛客网 刷题前的准备工作(输入 输出 如何接收?)

    牛客网 刷题前的准备工作 牛客网 刷题前的准备工作 1. 数据读取接受问题 2.牛客刷题前的准备: 2.1. 弄清楚输入输出的行数关系 3.代码怎么写 3.1. 在牛客上测试自己的模板代码,是否能正确 ...

  6. 牛客网刷题记录 || 循环

    这是牛客网刷题记录专栏第七篇博文,先给大家简单介绍一下牛客网,牛客网是一个集笔面试系统.题库.课程教育.社群交流.招聘内推于一体的优质网站,牛客网题库中包含几万道题目,注重通过边学边练的模式揽获编程人 ...

  7. 【牛客网刷题】中秋节前开启java专项练习错题总结第一天

    [牛客网刷题]中秋节前开启java专项练习错题总结第一天 概述 写在前面 错题分析 值得记录的错题 总结 写在最后 概述 还有十几天就到中秋节了,从此又老了一岁,也多了一年的知识积累.对于这样一个特殊 ...

  8. verilog牛客网刷题代码汇总

    verilog牛客网刷题代码汇总 作者:安静到无声 个人主页 作者简介:人工智能和硬件设计博士生.CSDN与阿里云开发者博客专家,多项比赛获奖者,发表SCI论文多篇. Thanks♪(・ω・)ノ 如果 ...

  9. 「解析」牛客网-华为机考企业真题 41-60

    又是一年春招时,有幸收到华为自动驾驶算法岗,之前刷题不多,在此汇总下牛客网的真题,主要采用Python编写,个人觉得语言只是实现工具而已,并不是很关键,Python简洁易懂,更加适合算法工程师快速验证 ...

最新文章

  1. com口驱动_手机都没耳机口了,平衡口现在才来是作死还是?
  2. STM32 基础系列教程 39 - Lwip_tftp
  3. 【转】用BibTeX 写 Reference
  4. 计算机行政考试题库,2014香港特别行政区计算机等级考试试题 二级ACCESS考试题库...
  5. python生成数据库登录界面_python 生成数据库
  6. 从数据类型 varchar 转换为 numeric 时出错.
  7. 一致性哈希和redis分布式集群
  8. 【TSP】基于matlab GUI混合粒子群算法求解旅行商问题【含Matlab源码 925期】
  9. 第五章 编码/加密——《跟我学Shiro》[张开涛]
  10. java去除对象属性空格_JAVA 对象中去除空格
  11. Windows 10 修改桌面图标三(文件夹图标)
  12. 静态网页设计——春节
  13. 想要做网页游戏怎么办 ?PixiJs 篇(四)
  14. 春运在即 360又抢了12306的风头
  15. 新建Excel无法打开解决办法
  16. 遥感图像处理:最小噪声分离变换(Minimum Noise Fraction Rotation,MNF Rotation)
  17. vscode 护眼主题 界面UI配色 语法配色
  18. 计算机视觉入门之图像处理<六>:图像锐化处理
  19. java毕业设计保险公司风险测评管理系统Mybatis+系统+数据库+调试部署
  20. MBIST --- PATR1.Memorybist测试原理

热门文章

  1. 虚拟机不显示桌面_Windows10系统,你不知道的10个使用技巧请收藏
  2. svpwm矢量控制电机相电压波形_如何深入理解SVPWM?
  3. iqooz1手机能搭载鸿蒙吗,我最近看中2款手机,iQOOZ1x和荣耀30青春版选谁更好?你们知道吗...
  4. php strrchar,php文件上传
  5. 软件开发工程师证书有用吗_bim工程师证书有用吗 含金量怎么样?
  6. mysql存储引擎简书_MySQL存储引擎详解
  7. 帆软日期格式转换_时间转换为年月日
  8. unity怪物攻击玩家减血_热血传奇:游戏里要千万小心的小怪,玩家稍有不慎就要吃大亏...
  9. opencv 4快速入门_茶知识|茶道核心4元素,看懂你也可以快速入门茶道!先收藏...
  10. 笔记本电脑5年没清灰了_2020年5月轻薄办公笔记本电脑推荐(上半月版)