笔试刷题笔记

作者: 飞猪的浪漫 | 来源:发表于2021-07-31 23:25 被阅读0次

C++中运算符重载是多态性的一种表现

运算符重载是针对C++原有运算符进行的,不可能通过重载创造出新的运算符

除了

.             (成员访问运算符)

.*            (成员指针访问运算符)

::             (域运算符)

sizeof    (长度运算符)

?:            (条件运算符)这5个运算符外,其他运算符都可以重载

运算符重载不可改变其结合性,操作数个数和优先级。

在函数体内修改形参是不会影响实参值的

 首先(1<<5)表示左移5位,相当于1乘以2的5次方,即100000=32。此题答案为31。而原题需要异或运算,即异或运算: 21=010101   ^     31=011111     =》    001010=10,结果应该为10。

在类方法中可用this来调用本类的类方法 这是错误的

先要理解什么是类的方法,所谓类的方法就是指类中用static 修饰的方法(非static 为实例方法),比如main 方法,那么可以以main 方法为例,可直接调用其他类方法,必须通过实例调用实例方法,this 关键字不是这么用的

在类方法中调用本类的类方法时可直接调用

B 类方法是指用static修饰的方法,普通方法叫对象方法。

data2=(2,6);

【解析】结构体变量建议在定义的时候进行初始化。结构体常见的几种初始化方法如下: (1)struct a a1 = { .b = 1, .c = 2 }; (2)struct a a1 = { b:1, c:2 }; (3)struct a a1 = { 1, 2}; 计算机内核喜欢用第一种,使用第一种和第二种时,成员初始化顺序可变。因此,可以判断选项 A 错误。

void Func(int &nVal1);

C++中&有另外一个含义,用来声明引用,&不是地址运算符,而是类型标识符的一部分。就像声明char*指的是指向char的指针一样,int &指的是指向int的引用,变量和变量的引用指向相同的值和内存单元,引用相当于变量的别名。因此在参数传递时也只需要传递变量名即可,即Func(a)。它的形式上看起来与值传递相同,但它传递参数时不复制副本,与指针一样可以修改主调函数的参数值,且使用起来更方便.

&(引用)==>出现在变量声明语句中位于变量左边时,表示声明的是引用.

&(取地址运算符)==>在给变量赋初值时出现在等号右边或在执行语句中作为一元运算符出现时表示取对象的地址.

第一, fun(int a), 你调用fun(b)时 , 传的是b的值的副本,当函数里面改变参数a时,只是改变了b的副本,对b没影响 ;

第二, fun(int &a), 你调用fun(b)时, 传的是b的内存地址啊, 说白了就是b, 函数中改变参数a就是改变b。

值传递:一个是b的copy,

地址传递:一个是b的内存地址

 x = printf(“I See, Sea in C”);

 printf(“x=%d” , x);

正确返回输出的字符总数,错误返回负值,与此同时,输入输出流错误标志将被置值,可由指示器ferror来检查输入输出流的错误标志。

extern"C"{

voidfoo(int) { }

}

extern "C"指令中的C,表示的一种编译和连接规约,而不是一种语言。C表示符合C语言的编译和连接规约的任何语言,如Fortran、assembler等。

这段代码应于在c++语言代码中

C++在编译的时候为了解决函数多态的问题,会将函数名和参数联合起来生成一个中间的函数名称,这个‘C’就代表不要给我生成中间的函数名称,按照C语言的编译来.

1. malloc,calloc,realloc,free属于C函数库,而new/delete则是C++函数库;

2. 多个-alloc的比较:

    alloc:唯一在栈上申请内存的,无需释放;

    malloc:在堆上申请内存,最常用;

    calloc:malloc+初始化为0;

    realloc:将原本申请的内存区域扩容,参数size大小即为扩容后大小,因此此函数要求size大小必须大于ptr内存大小。

void *malloc(size_t _size)

成功返回申请的堆空间地址,失败返回NULL。

calloc:

void *calloc(size_t nmemb,size_t size)

nmemb为申请元素的数目,size为元素的大小,相乘即为分配空间。成功返回申请的地址,失败返回NULL。

void *realloc(void *ptr,size_t size)

扩容原有内存的大小。ptr表示扩容前的指针,是之前用malloc或者calloc申请的地址。或ptr等于nullptr,等同于malloc。size表示扩容后的内存大小。

返回值:失败返回NULL,成功返回地址。如果地址与ptr相同,证明原空间后申请,不同,可能后续空间不足,重新申请。

申请失败,之前的内存并不会释放。

classshape 

{public:  

 virtual intarea()=0;

}; 

rectangle r; r.setLength(3,5); 

抽象类不能实例化对象,但是可以定义指针和引用。

但是当一个类中有一个或多个纯虚函数的时候,这个类就自动成为了抽象类,即不可以实例化

相关文章

  • 笔试刷题笔记

    C++中运算符重载是多态性的一种表现 运算符重载是针对C++原有运算符进行的,不可能通过重载创造出新的运算符 除了...

  • 公考经验五

    第九篇 笔试阶段。总体说下,笔试备考主要是刷题和一直写申论。行测下载粉笔公考APP去刷题,界面很简洁,题目解释也很...

  • 笔试算法刷题

    原创:王稳钺资料来源:安老师 一、刷题方法与面\笔试能力突破技巧 平时刷题时,市面上大多数尤其以LeetCode为...

  • 腾讯市场策划与推广 笔试+面试

    腾讯笔试+面试 面试岗位 市场策划与推广 笔试篇 腾讯的笔试刷人不多。笔试会先找时间有一轮模拟笔试让你熟悉环境和题...

  • 关于Java岗校招的笔试和面试

    如果你正在开始准备校招,希望可以帮到你。 笔试 笔试准备 算法题是笔试中最重要的部分: 剑指offer,建议必刷。...

  • 晨间日记

    计算机刷题 看书写笔记 高数刷题 英语刷题 奋斗到天亮,加油奥利给

  • 益凤:保持好感觉

    读书有益,凤凰花开。【1322】 在喜欢的状态里生活得自由自在。 早起笔试刷题,头脑保持清醒。 中午手机刷题,答案...

  • 阿里初面被两道编程题给干掉,再次内推终上岸(已拿电子offer)

    前言 之前阿里正式批笔试4道编程题只干掉了了2道题,然后就被刷了~~ 刷的题还不够,感觉还是太菜了~~,本来对阿里...

  • 剑指offer系列(1、二维数组中的查找)

    笔试面试一直被算法题搞死,现在刷题虽然晚了点,但还是刷一刷吧......... 题目描述 在一个二维数组中(每个一...

  • 谷歌工程师为金三银四筹备1000道Leetcode刷题笔记

    对于刷题相关的文章,在之前我也推荐过不少,今天再给大家推荐一份算法刷题笔记,这份笔记与以往的刷题有所区别,作者把 ...

网友评论

    本文标题:笔试刷题笔记

    本文链接:https://www.haomeiwen.com/subject/hgakvltx.html