年轻人的努力

导航

04 2021 档案

原始字面量
摘要:R“xxx()xxx” x是可以省略的,如果加了,前后就必须一样,否则语法错误,就算加了,前后的x也会被过滤掉 c中描述路径必须使用反斜杠\,来进行转义。 \的作用: 1.对普通字符进行转义,变成有特殊含义的字符 2.对特殊字符进行转义,变成普通字符 3.连接符 阅读全文

posted @ 2021-04-24 14:14 年轻人的努力 阅读(65) 评论(0) 推荐(0)

c++11中的nullptr
摘要:由于c++语法比较严格,所以不允许void*类型的指针隐式类型转换给其他类型指针,所以在c++中必须进行强转才行,不然语法错误,因为要兼容c,所以c++中把NULL定义为0,nullptr定义为(void*)0; 阅读全文

posted @ 2021-04-23 23:20 年轻人的努力 阅读(50) 评论(0) 推荐(0)

虚继承和虚函数
摘要:谁虚继承父类,谁的内部就多一个vbptr,就跟谁的内部有虚函数,谁的内部就多一个vfptr 虚继承是针对成员属性,虚函数是针对成员方法, 如果多继承,vfptr和vbptr会继承多个,不会只继承一份 虚基类:一个类只要被用virtual关键字继承,这个类就是虚基类 阅读全文

posted @ 2021-04-23 16:19 年轻人的努力 阅读(63) 评论(0) 推荐(0)

重载,重写,重定义
摘要:1,父类和子类做参数可以构成重载 2.重载是编译阶段的多态,实现方式是函数名后加参数类型,函数重载跟返回值没有关系,函数重写是运行时的多态,属于动态多态 3.父类和子类的对象,指针,引用之间,是可以从子类到父类转换的,不可以下行转换,调用的都是父类的东西 4.重写指的是函数参数,返回值,函数名都一样 阅读全文

posted @ 2021-04-23 14:17 年轻人的努力 阅读(138) 评论(0) 推荐(0)

面试总结
摘要:1.c++11 2.多线程 3.德科的俩道编程题:1.求二维数组的行值的最大值 2.该员工能不能评选优秀员工 4. 阅读全文

posted @ 2021-04-23 12:02 年轻人的努力 阅读(49) 评论(0) 推荐(0)

set
摘要:自动排好序,只有key,没有value,不允许重复,mutiset可以重复,不允许通过迭代器修改值,所以迭代器是cosnt 阅读全文

posted @ 2021-04-19 18:22 年轻人的努力 阅读(50) 评论(0) 推荐(0)

sort
摘要:容器的迭代器支持随机访问的话,可以使用系统提供的标准算法sort(); 如果不支持的话,容器内部会提供对应的算法接口;比如list容器,可以使用l.sort(); 阅读全文

posted @ 2021-04-19 14:57 年轻人的努力 阅读(64) 评论(0) 推荐(0)

vector
摘要:vector迭代器支持双向,随机 阅读全文

posted @ 2021-04-19 14:55 年轻人的努力 阅读(31) 评论(0) 推荐(0)

list
摘要:正序迭代器: iterator 逆序迭代器: reverse_iterator 正序便利: list<int> l; for(list<int>::iterator it=l.begin();it!=l.end();it++) cout<<*it<<endl; 逆序遍历: list<int> l; 阅读全文

posted @ 2021-04-19 14:35 年轻人的努力 阅读(91) 评论(0) 推荐(0)

stl
摘要:容器: 顺序式 关联式: 算法: 访问,插入,删除,便利, 迭代器: 阅读全文

posted @ 2021-04-19 13:57 年轻人的努力 阅读(58) 评论(0) 推荐(0)

scanf输入%c
摘要:scanf(" %c",&c) %c前面要有空格,这样才能吃掉回车或者空格 阅读全文

posted @ 2021-04-18 01:57 年轻人的努力 阅读(161) 评论(0) 推荐(0)

n次幂pow和string
摘要:#include<math.h> pow(16,3) 16的3次方 string s; s.length() 求字符串的长度 取字符串中的元素使用s[i] 阅读全文

posted @ 2021-04-17 23:46 年轻人的努力 阅读(59) 评论(0) 推荐(0)

虚函数
摘要:父类写了虚函数后,父类内部会产生一个虚函数表指针,指向一个虚函数表,表里保存的是虚函数的地址 子类继承父类后,如果不重写父类的虚函数,虚表里面保存的是父类的虚函数地址,如果重写,则保存的是子类的虚函数的地址 当父类指针或者引用指向子类对象后,调用虚函数的时候,通过vfptr查看虚函数表,不查看父类的 阅读全文

posted @ 2021-04-17 23:44 年轻人的努力 阅读(86) 评论(0) 推荐(0)

虚继承
摘要:class person{public: int a;}; class son1: virtual public person{ }; class son2: virtual public person{ }; class son: public son1,public son2{ }; sizeo 阅读全文

posted @ 2021-04-16 15:46 年轻人的努力 阅读(47) 评论(0) 推荐(0)

子类和父类中同名的成员属性和方法
摘要:就近原则,调用子类中的属性和方法 可以使用作用域运算符嗲用父类的 阅读全文

posted @ 2021-04-16 15:40 年轻人的努力 阅读(494) 评论(0) 推荐(0)

父类的哪些不会被子类继承
摘要:构造函数,析构函数,operator= 阅读全文

posted @ 2021-04-16 15:01 年轻人的努力 阅读(163) 评论(0) 推荐(0)

子类中含有其他类成员
摘要:先构造父类,再构造其他类,最后构造自身,析构相反 阅读全文

posted @ 2021-04-16 14:53 年轻人的努力 阅读(58) 评论(0) 推荐(0)

static和cosnt
摘要:static在本类中不计入类的大小 cosnt其实和普通成员一样 static可以被继承,继承后也不计入子类的大小 const可以被继承,继承后计入子类的大小 阅读全文

posted @ 2021-04-16 14:52 年轻人的努力 阅读(91) 评论(0) 推荐(0)

构造函数的调用
摘要:1.括号法 person p(10); 不要使用括号法初始化无参构造 2.显示调用 person p = person(10); 创建匿名对象不要用拷贝构造 3,隐士法 person p = 10; 拷贝构造函数的调用时机 1.用已经创建好的对象来初始化新的对象 2.值传递的方式给函数参数传值 3. 阅读全文

posted @ 2021-04-15 16:02 年轻人的努力 阅读(90) 评论(0) 推荐(0)

c++和java中的数组
摘要:c++: int a[] java: int a[] int[] a; 阅读全文

posted @ 2021-04-15 10:56 年轻人的努力 阅读(60) 评论(0) 推荐(0)

c++的内存分布
摘要:1.https://blog.csdn.net/leneey/article/details/80023097,感觉符号表在常量区 2.类在内存中的分布https://www.cnblogs.com/jerry19880126/p/3616999.html 一:不包含继承和多态 1.普通成员变量 2 阅读全文

posted @ 2021-04-14 23:39 年轻人的努力 阅读(58) 评论(0) 推荐(0)

引用
摘要:1.对变量起别名 2.引用必须初始化 3.引用一旦初始化,就不可以指向其他其他变量 int &a = b;这是引用初始化 a =c;这是赋值 4.对数组建立引用 1.直接建立引用 int a[10]; int (&b)[10] = a; 2.间接建立引用 typedef int (arrtype) 阅读全文

posted @ 2021-04-14 20:20 年轻人的努力 阅读(74) 评论(0) 推荐(0)

c++对c的扩展
摘要:1.面向对象和泛型编程 2.对全局变量的检测增强 int a; int a=1; 在c下是可以的,c++不可以 3.函数检测增强 返回值,形参,函数调用的个数 4.类型转换检测增强 必须进行强转 5.staruct增强 c下结构体内不能有函数 创建结构体变量的时候必须加struct,c++可以,因为 阅读全文

posted @ 2021-04-14 19:42 年轻人的努力 阅读(220) 评论(0) 推荐(0)

using
摘要:1.using声明 using namespace::变量名 当using声明和就近原则同时出现时,会导致重复声明,要避免 2.using编译指令 using namespace 当using编译指令和就近原则同时出现时,先就近然后再找命名空间的 阅读全文

posted @ 2021-04-14 18:41 年轻人的努力 阅读(518) 评论(0) 推荐(0)

struct和class的区别
摘要:class默认是private,struct默认是public 阅读全文

posted @ 2021-04-14 18:22 年轻人的努力 阅读(64) 评论(0) 推荐(0)

c++的::
摘要:作用域运算符 c里面没有 如果::前面没有任何修饰,表示全局作用域 阅读全文

posted @ 2021-04-14 18:16 年轻人的努力 阅读(49) 评论(0) 推荐(0)

命名空间
摘要:标准空间:std 1.解决重名的问题 2.必须在全局下声明命名空间 3,命名空间可以嵌套 4.命名空间可以随时添加成员,意思就是声明俩个同名的命名空间,不是覆盖是添加 5.当命名空间是匿名的话,匿名空间相当于声明了static 全局变量 6.命名空间可以起别名,通过namespace 变量名 = 原 阅读全文

posted @ 2021-04-14 18:12 年轻人的努力 阅读(47) 评论(0) 推荐(0)

cin和cout
摘要:是对象,不是运算符,<<和>>是运算符重载,endl会换行并刷新缓冲区 阅读全文

posted @ 2021-04-14 18:04 年轻人的努力 阅读(64) 评论(0) 推荐(0)

java 中的+=
摘要:java中+=有强制类型转换 阅读全文

posted @ 2021-04-14 17:29 年轻人的努力 阅读(65) 评论(0) 推荐(0)

merge sort
摘要:稳定, 1.如果元素的个数为奇数 mid = len/2; i=0; j=mid+1; k=0; while(i<=mid && j<len){ if (a[i]<=a[j]) { tmp[k]=a[i]; i++; k++ } else { tmp[k] = a[j]; j++; k++; } } 阅读全文

posted @ 2021-04-14 15:17 年轻人的努力 阅读(49) 评论(0) 推荐(0)

递归
摘要:在栈上分配栈帧,没调用一次分配一个,严格来讲,每个方法不一样,因为参数不一样 阅读全文

posted @ 2021-04-13 16:31 年轻人的努力 阅读(47) 评论(0) 推荐(0)

shell sort
摘要:原理:先取一个间隔,然后间隔慢慢减少,最后到1为止 不稳定,空间为1,时间为 for(gap=4;gap>0;gap/= 2) { for(int i =gap;i<len;i++) { for(j=i;i>gap-1;j-=gap) { if (a[j]<a[j-gap]) swap(); } } 阅读全文

posted @ 2021-04-13 16:22 年轻人的努力 阅读(41) 评论(0) 推荐(0)

insert sort
摘要:时间复杂度最好为O(n),最差为O(n2),空间复杂度为O(1),稳定 int n=0; for(int i=1;i<len;i++) { for(int j=i;j>0;j--) { if (a[j]<a[j-1]) swap(); n++; } if } 阅读全文

posted @ 2021-04-12 20:31 年轻人的努力 阅读(42) 评论(0) 推荐(0)

bubble sort
摘要:时间复杂度最差为O(n2),最好为O(n),空间复杂度为O(1),属于稳定 n=0; for(int i = len-1;i>0;i--) { for(int j =0;j<i;j++) { if (a[j]>a[j+1]) { swap(); } } if (n==0) { break; } } 阅读全文

posted @ 2021-04-12 20:10 年轻人的努力 阅读(27) 评论(0) 推荐(0)

selecton sort
摘要:for (int i =0;i<len -1;i++) { minpos =i; for(int j=i+1;j<len;j++) { if (a[j]<a[minpos]) { swap(); } } } 阅读全文

posted @ 2021-04-12 20:07 年轻人的努力 阅读(52) 评论(0) 推荐(0)

条件编译和宏
摘要:条件编译: http://c.biancheng.net/view/289.html 宏: http://c.biancheng.net/view/446.html 阅读全文

posted @ 2021-04-11 20:57 年轻人的努力 阅读(57) 评论(0) 推荐(0)

char* p ={'a','b','\0'}
摘要:1,char a[]={'a','b','\0'} 2,char a[]="ab" 3,char *a="ab" 4,char *a ={'a','b','\0'} 1,2分配在栈上,3,4是在rodata区域 阅读全文

posted @ 2021-04-11 12:30 年轻人的努力 阅读(182) 评论(0) 推荐(0)

未决信号集和阻塞信号及
摘要:未决信号及里面的信号是暂时未处理,处不处理取决于阻塞信号及里面该信号是否阻塞,如果阻塞,该信号暂不处理,等解除阻塞后,处理该信号, 这俩个集合都在pcb中,使用的是位操作,所以每一个信号的值只有俩种0和1 阅读全文

posted @ 2021-04-11 12:17 年轻人的努力 阅读(108) 评论(0) 推荐(0)

信号
摘要:1.每种信号干什么,什么情况下产生都是事先预定好的,linux下提前定义了64种信号,特定条件下产生特定的信号,每种信号都有默认的执行动作 2.信号的原理: 类似于硬件中断,软中断,优先级高于其他操作,一个进程把信号发给内核,内核通过pid发给相应的进程,进程收到后执行相应的动作 3.信号的处理方式 阅读全文

posted @ 2021-04-10 18:19 年轻人的努力 阅读(58) 评论(0) 推荐(0)

父子进程之间能共享的东西
摘要:1.管道 2.内存映射,这个实际是内存地址 3.文件描述符 1和3是一回事,都是文件描述符, 阅读全文

posted @ 2021-04-10 18:04 年轻人的努力 阅读(159) 评论(0) 推荐(0)

默认makefile
摘要:1.编写一个.c文件 2.使用make 工具 这样修然没写makefile文件,但是应该有一个默认的makefile 阅读全文

posted @ 2021-04-10 12:41 年轻人的努力 阅读(78) 评论(0) 推荐(0)

管道的理解
摘要:首先父进程在创建子进程之前打开的文件,父子可以操作同一个文件, 这块难理解的是父子进程如果是在fork之后打开的文件,而且是相同名字的文件,那么在磁盘上是怎么存储的呢 利用pipe函数,会创建一个管道文件,但是这个文件有俩个文件描述符,所以要在fork之前创建管道,这样可以实现共享, 管道的实质是内 阅读全文

posted @ 2021-04-10 12:38 年轻人的努力 阅读(80) 评论(0) 推荐(0)

父子间成对文件的操作
摘要:fork之前打开文件,父子之间操作的是同一个文件 fork之后打开文件,父子操作的是不同的文件 阅读全文

posted @ 2021-04-08 21:55 年轻人的努力 阅读(50) 评论(0) 推荐(0)

数组做函数形参
摘要:此时该数组是一个指针 阅读全文

posted @ 2021-04-08 21:38 年轻人的努力 阅读(96) 评论(0) 推荐(0)

阻塞和非阻塞
摘要:这是文件的属性 普通文件默认是非阻塞 设备文件(字符和块),管道,socket默认是阻塞 阅读全文

posted @ 2021-04-03 10:25 年轻人的努力 阅读(58) 评论(0) 推荐(0)