力扣刷题总结-持续更新

Gitee提交代码的网址 Gitee/tanqinqin
C++11 tutorial C++11 tutorial
C++11 and more C++more
C代码要用到C++参考: Reference - C++ Reference (cplusplus.com)

  1. new, malloc, calloc, realloc
    malloc负责在堆栈上开辟空间。内存连续
	char *p = (char *)malloc(sizeof(array[0]));
  1. 什么时候用new, 什么时候用malloc?
  • C malloc, C++ new
  • 自己定义的object,或者需要初始化data member用new, 因为它自动会去调用构造函数。内建类型一般用malloc,可以更方便控制
  • 内建类型:
	int *p = (int*)malloc(sizeof(int)*30);
  1. 定义vector的二维数组N1*N2:
 	vector<vector<int>> dp(N1, vector<int>(N2));
	vector<vector<int>> dp(N1, vector<int>(N2, value));
  1. C++11匿名函数:

编译C++11的代码: g++ -std=c++11 traverse.cpp -o traverse

lambda匿名函数

  • 通常用于回调函数。
  • 可以传参,可以返回值(通过参数是否添加&来判断),传的值只是传进去的参数又带回来一个新的值。
  • 没有函数名。
	[] (int x) {
	std::cout << x << “ ”;
	}

[] 表示传递外部环境元素
(int) 传递参数

  • 如何传递外部环境参数?

[=] (int &x) 函数里面可以用到函数外面的变量,并且可以改变外部变量的值,外部变量都是通过指针传进来的。
[&] (int &x) 函数里面可以用到函数外面的变量,但不能改变外部变量的值,外部变量通过值传递进来。
[] (int x) 外部变量的值在函数里面不可见。

上一篇:CSP 202104-1 灰度直方图 C语言满分答案


下一篇:Docker 与 K8S学习笔记(九)—— 容器间通信