01 2022 档案
摘要:先看几个常规的初始化: 以上都为常规初始化,即调用类的构造函数进行初始化。 initialization list,即用初始化列表进行初始化,打破了原有的初始化格局,令初始化更加直观: 这种方式的构造大体如下:
阅读全文
摘要:对于一个给定的序列,如果按照常规遍历每个元素: 或者: 有了for语句,可以使之变得简单: 再比如L:
阅读全文
摘要:在C++中,有四类特殊的成员函数,分别为:默认构造函数,默认析构函数,默认拷贝构造函数,默认赋值运算符。他们的作用为创建、初始化、销毁、拷贝对象。 虽然在类A中什么都没有定义,但是编译会通得过,因为编译器会认为有必要,于是会为我们默认创建。 如果我不想要编译器为我们创建,于是可以=delete函数,
阅读全文
摘要:final主要有两个功能: 1.阻止子类的继承。 2.阻止虚函数的覆写。
阅读全文
摘要:对于一个含有虚函数的父类,子类继承并覆写了父类的虚函数,一个好的编译器可能会有提示功能,比如: 上面的mouseMoveEvent是斜体,表明要覆写父类的虚函数,但是如果其中的名字不小心写错了,编译器没有能够给出斜体的提示,此时override的作用便派上用场了,他的作用就是告诉编译器我这个函数是要
阅读全文
摘要:#include <iostream> using namespace std; void f(int) { cout<<"f(int)"<<endl; } void f(bool) { cout<<"f(bool)"<<endl; } void f(void*) { cout<<"f(void*)
阅读全文
摘要:#include<stdio.h> #include<time.h> typedef struct _DNode { int data; struct _DNode* prev; struct _DNode* next; }DNode; DNode* CreateDNodeList() { DNod
阅读全文
摘要:int binarySearch(int *p,int find,int l,int h) { int mid; while(l<=h) { mid=(l+h)/2; if(find==p[mid]) { return mid; } else if(find>p[mid]) { l=mid+1; }
阅读全文
摘要:思想:选定中轴,然后然后比中轴元素小的放在左边,大的放在右边,然后依次递归左边和右边,直到所有中轴归位。 void quicksort(int* p,int l,int h) { if(l<h) { int pivot=p[l]; int lo=l,high=h; while(lo<high) {
阅读全文
摘要:#include <stdio.h> #include<string.h> #include<stdlib.h> char* encode(char* buf,int line) { int len=strlen(buf); int nlen=len; if(len%line) nlen=len+(
阅读全文