- 博客(20)
- 收藏
- 关注
转载 牛客 C++刷题day33,34
1.一个数组只能进行初始化而不能进行赋值,但可以逐个赋值。这个和整体赋值的说法是有出入的。2.一定要分清操作符和函数的区别,比如malloc就是函数而++和sizeof就是操作符。3.构造函数函数名必须和类名相同,这一条就不符合运算符重载的要求。运算符重载的格式为:返回值类型 operator(运算符) (参数)。4.vector erase以后,itor已经指向下一个元素了...
2019-10-05 12:40:00
169
转载 牛客 C++刷题day33
1.C语言其实是有auto的,并不是C++才有的。这点要记住2.未定义行为简单地说,未定义行为是指C语言标准未做规定的行为。编译器可能不会报错,但是这些行为编译器会自行处理,所以不同的编译器会出现不同的结果,什么都有可能发生,这是一个极大的隐患,所以我们应该尽量避免这种情况的发生。这样的例子有很多:同一个表达式中有多种运算符,同一语句中各参数的求值顺序,通过指针修...
2019-10-03 18:30:00
121
转载 牛客 C++刷题day30&31&32
1.在我们进行机内数字运算的时候,一定要遵循这样的规则:先转化为补码,然后进行加法运算,最后将结果从补码转化为原码,得到结果。当然需要注意的是例如像int的最小值-2147483648,这个值完全是计算机为了减少+-0的歧义性而定义下来的数字。需要特别注意。2.其实刚刚fork出来不止虚拟地址一样,物理地址也一样。当进程发生分歧时,即修改此变量时,才会分配不同的物理地址,也就是cop...
2019-10-03 07:35:00
130
转载 牛客 C++刷题day29
1.函数可以嵌套调用,但不可以嵌套定义。2.在都不是虚函数的情况下,delete派生类对象(非基类指针指向)调用派生类的析构函数、然后调用基类的析构函数。delete派生类对象(基类指针指向)只调用基类的析构函数。虚函数情况下delete派生类对象(非基类指针指向)和delete派生类对象(基类指针指向)都会调用派生类的析构函数、然后调用基类的析构函数。3.正如其他的普通的变量一...
2019-09-29 12:53:00
153
转载 牛客 C++刷题day28
1.右值引用:右值引用其实就是对一个临时右值表达式的引用,表达式中不能出现任何变量。例如:int &&a=1;和const int &a=1; 他们两的操作时完全等价的。而且右值引用的实质是在数据区开辟一个无名变量然后进行绑定而已。形如constA&a=GetA()的是常量左值引用,是一个“万能”的引用类型,可以接受左值、右值、常量左...
2019-09-28 13:21:00
130
转载 牛客 C++刷题day25
1.在一个对象未建立起来时通常用的是拷贝构造函数,而对象建立起来之后的复制拷贝就需要使用赋值运算符重载了。拷贝构造函数形式如下:CExample(const CExample& C) 就是我们自定义的拷贝构造函数。可见,拷贝构造函数是一种特殊的构造函数,函数的名称必须和类名称一致,它必须的一个参数是本类型的一个引用变量。调用场合有:当函数的参数为类的对象时;函数的返回...
2019-09-27 22:12:00
86
转载 牛客 C++刷题day24
1:include “X.h” 和include <<X.h>>的区别双引号:搜索用户所在目录;如果找不到,搜系统指定的目录尖括号:仅仅搜索系统指定目录2:多态性总结(编译时)静态:函数重载、运算符重载、模板实现(运行时)动态:虚函数实现3:局部静态变量的说明static初始化一次,使得函数结束时局部变量x不被释放,下一次使用函...
2019-09-26 11:59:00
144
转载 牛客 C++刷题day23
1.C++或者C里面的注释有两种,一种是/*------*/,另外一种是单独一行//----- 即可2.析构函数名与类名相同,只是在函数名前面加一个位取反符~,以区别于构造函数。它不能带任何参数,也没有返回值(包括void类型)。只能有一个析构函数,不能重载。如果用户没有编写析构函数,编译器自动生成一个缺省的析构函数(即使自定义了析构函数,编译器也总是会为我们合成一个析构...
2019-09-26 07:33:00
108
转载 牛客 C++刷题day22
switch 语句中执行顺序:如果某一个case中不加break,那么假如某一次切换到该case则按照语句顺序,执行接下来的所有case句子,直到遇到break,注意,switch语句中的语句顺序非常重要。原子操作( Atomic operations)不可中断的一个或一系列操作。标准库里面的string在多线程下并不保证是都是安全的,只提供两种安全机制:1....
2019-09-24 13:18:00
173
转载 牛客 C++刷题day21
1 C++中文件操作的一些函数的基本讲解:fseek:fseek函数是用来设定文件的当前读写位置.函数原型: int fseek(FILE *fp,long offset,int origin);函数功能:把fp的文件读写位置指针移到指定的位置.fseek(fp,20,SEEK_SET); 意思是把fp文件读写位置指针从文件开始后移20个字节.ftell:f...
2019-09-23 22:08:00
105
转载 牛客 C++刷题day14&15&16&17&18&19&20 假期之后的复习
前几天去大伯家休养了一个星期,打打球,钓钓鱼相当惬意,刷题强度下降了很多。现在恢复正常作息1:fscanf和fprintffscanf() 和 fprintf() 函数与前面使用的 scanf() 和 printf() 功能相似,都是格式化读写函数,两者的区别在于 fscanf() 和 fprintf() 的读写对象不是键盘和显示器,而是磁盘文件。这两个函数的原型为:int ...
2019-09-22 22:56:00
173
转载 牛客 C++刷题day13
1:复合语句也被称为语句块,它至少要包含两条语句但是你不妨在语句里写个空也行,只不过这种操作必然会被编译器过滤掉2:死代码死代码的英文是dead code。是指在程序操作过程中永远不可能被执行到的代码。通过AQtime覆盖率的分析就可以发现所有的永远都不会执行到的代码,但是与程序无关的代码却不一定能够全部发现。消除死代码(DCE)在某些情况下,编译器可以判断出某些代码根本不影...
2019-09-15 21:01:00
387
转载 牛客 C++刷题day7,8,9,10,11,12
1:C++中基本数据类型只有整型,浮点型,和字符型。其他的逻辑型被整型代替了2.由于预处理命令没有分号,所以每行只能写一行预处理命令。其次宏替换发生在编译阶段,所以不占用程序运行阶段的时间。3.形如以下的结构体:struct{。。。。。。}object;只定义了一个实体,之后将无法再进行声明和定义,也就是说跟java的匿名类有点类似3:内联函数是否嵌入代码...
2019-09-14 22:28:00
108
转载 牛客 C++刷题day6
1:关于类的一些解释一、空类的大小 C++中空类的大小是1,这是因为空类也可以被实例化,为了确保每一个实例在内存中都有一个独一无二的地址,编译器往往隐含给一个空类加一个字节。二、类中的成员函数与非虚成员函数 类中的非虚成员函数不占用空间,虚函数表占用四个字节,只要有虚函数(无论有几个)都只占用四个字节。成员函数还是以一般的函数一样的存在。a.fun()是通过fun(a...
2019-09-08 22:49:00
131
转载 牛客 C++刷题day5
1 &&运算符中,如果左端的表达式已经为0则后面的表达式不会在计算,同样||若 左边为1则右边也不再计算。2 关于C++和C的几个默认选项一、返回值C中:如果函数未指定返回值类型,则默认为intc++中:如果一个函数没有返回值,返回值类型必须指定为void 二、参数列表C中:如果函数没有指定参数列表,则默认可以接受任意多个参数C++中:有严格的类...
2019-09-07 21:12:00
118
转载 牛客 C++刷题day4
1 :c语言中main函数若执行成功返回0而不是12:常见的不能声明为虚函数的有:普通函数(非成员函数)、静态成员函数、内联成员函数、构造函数、友元函数。内联函数(编译期间展开,虚函数是在运行期间绑定)构造函数(没有对象不能使用构造函数,先有构造函数后有虚函数,虚函数是对对象的动作)3:a<=0 | a>=10 其实和a<=0||a>=10 一样|运算只...
2019-09-06 22:44:00
129
转载 牛客 C++刷题day3
1:map和set的区别:map和set都是C++的关联容器,其底层实现都是红黑树(RB-Tree)。由于 map 和set所开放的各种操作接口,RB-tree 也都提供了,所以几乎所有的 map 和set的操作行为,都只是转调 RB-tree 的操作行为。map和set区别在于:(1)map中的元素是key-value(关键字—值)对:关键字起到索引的作用,值则表示与索引相...
2019-09-05 20:53:00
133
转载 牛客 C++刷题day2
1 静态函数在函数返回类型前加static,函数就定义为静态函数。函数的定义和声明在默认情况下都是extern的,但静态函数只是在声明他的文件当中可见,不能被其他文件所用。函数的实现使用static修饰,那么这个函数只可在本cpp内使用,不会同其他cpp中的同名函数引起冲突。warning:不要在头文件中声明static的全局函数,不要在cpp内声明非static的全局函数,...
2019-09-04 22:41:00
140
转载 牛客 C++刷题day1
1:数组指针和数组首地址的区别定义了数组a[4],其中a,&a,&a[0]都是数组的起始地址。但是步长有区别,也就是指向的类型不同a等同于a+0等同于&a[0],是指向数组第一个元素的指针,步长为指向的元素所占用的地址空间为sizeof(int) 。&a也是指向数组第一个元素的指针,但其意义是指向整个数组的首地址,指向的类型为整个数组,所以其步...
2019-09-03 20:50:00
118
转载 编程日志&&刷题日志&&开发日志迁移之碎碎念
Given an array of integers, return indicesof the two numbers such that they add up to a specific target.You may assume that each input would have exactlyone solution, and you may not use the ...
2019-08-27 18:19:00
371
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人