之前同事问了一道需要点脑洞的算法题,我觉得蛮有意思的,思路可能会给大家带来一些启发,特意在此记录一下 题目 现有一个元素仅为 0,1 的 n 阶矩阵,求连续相邻(水平或垂直,不能有环)元素值为 1 的序列和的最大值 假设有如下矩阵 则此矩阵连续相邻元素为 1 的序列和分别为 4, 3,(如图示),可 ...
分类:
其他好文 时间:
2019-11-06 00:54:31
阅读次数:
95
1.参数类型 2.右值引用参数的模版函数 3.标准库的move std::move (string("bye!"))执行过程: 推断T的类型为string remove_reference用string实例化 remove_reference<string>的type成员是string move的返 ...
分类:
编程语言 时间:
2019-10-04 19:00:37
阅读次数:
113
1 inline函数的好处 节省调用开销;相对于宏展开,inline发生在编译阶段,会做类型检查。 2 指针函数与函数指针的区别 指针函数是指带指针的函数,即本质是一个函数;函数指针是指向函数的指针变量,即本质是一个指针变量。 3 左值与右值的区别 左值指的是可以取地址的变量,左值与右值的根本区别在 ...
分类:
编程语言 时间:
2019-10-01 20:58:26
阅读次数:
119
首先我们知道任何变量都有左值和右值,分别对应变量的内存区域和内存区域中的值 引用其实就是变量的别名,其实是一个东西有两个名吧 定义方式 类型 &引用名 = 变量名 而且必须定义的时候就初始化,不然是错误的 看个例子吧 ...
分类:
编程语言 时间:
2019-09-22 20:00:35
阅读次数:
86
转自 https://www.cnblogs.com/jianhui-Ethan/p/4665573.html C++11 引入的新特性中,除了并发内存模型和相关设施,这些高帅富之外,最引人入胜且接地气的特性就要属『右值引用』了(rvalue reference)。加入右值引用的动机在于效率:减少不 ...
分类:
移动开发 时间:
2019-09-18 11:26:30
阅读次数:
157
一、赋值运算 赋值运算的左值必须是非const类型的左值,但注意初始化不是赋值; 赋值操作返回右值,因此多个相同类型的变量可以同时被赋值; 指针的赋值是地址的传递,即传递的是地址; 二、自增自减运算 前置形式:++i以及--i; 后置形式:i++以及i--; 区别:前置是先计算后赋值,后置是先赋值后 ...
分类:
编程语言 时间:
2019-09-14 23:05:23
阅读次数:
170
出处:http://see.xidian.edu.cn/cpp/html/476.html 目录一、指针数组和数组指针的内存布局二、int (*)[10] p2 也许应该这么定义数组指针三、再论a 和&a 之间的区别四、地址的强制转换回到顶部一、指针数组和数组指针的内存布局初学者总是分不出指针数组与 ...
分类:
编程语言 时间:
2019-09-11 12:05:15
阅读次数:
132
其中为什么要用到 string&& that 是因为如果要调用的话可能为: string(x); string(x+y) string(string a) 如果用左值,不论怎么样都要深拷贝,所以用右值直接替换会比左值更快 ...
分类:
其他好文 时间:
2019-09-10 00:43:05
阅读次数:
102
只能访问 stack 顶部的元素;只有在移除 stack 顶部的元素后,才能访问下方的元素。 堆栈操作 top():返回一个栈顶元素的引用,类型为 T&。如果栈为空,返回值未定义。 push(const T& obj):可以将对象副本压入栈顶。这是通过调用底层容器的 push_back() 函数完成 ...
分类:
其他好文 时间:
2019-09-01 16:23:11
阅读次数:
112
C++引用分两种:lvalue reference(左值引用)和rvalue reference(右值引用)。本文讨论lvalue reference(左值引用)。 ...
分类:
编程语言 时间:
2019-08-23 22:38:55
阅读次数:
147