随笔分类 - c++
摘要:在模板定义语法中关键字class与typename的作用完全一样。 typename另外一个作用为:使用嵌套依赖类型(nested depended name),如下所示: class MyArray { public: typedef int LengthType; ..... } templat
阅读全文
摘要:原文链接:https://blog.csdn.net/u011201045/article/details/38679417 首先要明白,C++中每一个对象所占的空间大小,对象的内存分布都是在编译时期就确定下来的。而对于模板类来说,对象占空间的大小和内存分布是不知道的,依所套用的类型而定,比如A为模
阅读全文
摘要:void heapify(vector<int> &arr, int n, int i) { int largest = i; int lson = 2 * i + 1; int rson = 2 * i +2; if (lson < n && arr[lson] > arr[largest]) {
阅读全文
摘要:int partition(vector<int> &arr, int left, int right) { int key = arr[right]; int i = left; for (int j = left; j <right; j++) { if (arr[j] < key) { swa
阅读全文
摘要:void merge(vector<int> &arr, int left, int mid, int right) { int lpos = left; int rpos = mid + 1; int poss = left; int i = 0; vector<int> tempArr; whi
阅读全文
摘要:void shellSort(vector<int> &arr) { int i,j,gap,key; for (gap = arr.size() / 2; gap > 0; gap /= 2) { for (i = gap; i < arr.size(); i++) { key = arr[i];
阅读全文
摘要:数组指针(也称行指针) 定义 int (*p)[n]; ()优先级高,首先说明p是一个指针,指向一个整型的一维数组,这个一维数组的长度是n,也可以说是p的步长。也就是说执行p+1时,p要跨过n个整型数据的长度。 如要将二维数组赋给一指针,应这样赋值: int a[3][4]; int (*p)[4]
阅读全文
摘要:Loading struct CLS { int m_i; CLS(int i):m_i(i) {} CLS() { CLS(0); } }; CLS obj; cout<<obj.m_i<<endl; 我们知道,当定义一个对象时,会按顺序做2件事情: 1)分配好内存(非静态数据成员是未初始化的)
阅读全文
摘要:void insertSort(vector<int> &arr) { int j; for (int i = 1; i < arr.size(); i++) { int key = arr[i]; for (j = i - 1;j >= 0; j--) { if (key < arr[j]) {
阅读全文
摘要:void select_Sort(vector<int> &arr) { int min = 0, j = 0; for (int i = 0; i < arr.size() - 2; i++) { min = i; for (j = i + 1; j < arr.size(); j++) { if
阅读全文
摘要:#include<iostream> #include<vector> #include<algorithm> #include<string> using namespace std; template<typename T> void swap(T *a, T *b) { T temp = *a
阅读全文
摘要:https://code.visualstudio.com/docs/cpp/config-clang-mac
阅读全文
摘要:gcc/g++ gcc发展到今天已经不单单可以编译C语言了,还可以编译C++、Java、Object-C等多种其他语言有一种说法是GCC的全名是GNU Compiler Collection(GUN 编译器集合),而gcc是GCC中用于编译c语言的编译器事实上,gcc看起来并不像是一个编译器,而像一
阅读全文