据我所知,git checkout将当前目录中的文件状态更改为树中特定点的状态.因此,它可用于切换分支或访问先前的提交.
为什么checkout选择此操作的名称?
这个类比是"我要去看看"吗?
是从图书馆查看书籍吗?
我不是在问这个名字是不是一个好主意,或者试图对自己做出判断 - 我只是想知道这个名字的历史起源是什么.
有什么区别:
pip install --upgrade pip
和
python -m pip install --upgrade pip
为何受到python -m pip install --upgrade pip普遍青睐?
这是我的功能:
const vector<int>& getVInt(){
vector<int> vint;
(...)
return vint;
}
Run Code Online (Sandbox Code Playgroud)
和,
vector<int> x = getVInt();
Run Code Online (Sandbox Code Playgroud)
收益:
在抛出'std :: out_of_range'的实例后调用终止
what():vector :: _ M_range_check
和
const vector<int>& x = getVInt();
Run Code Online (Sandbox Code Playgroud)
什么都不返回(一个大小不同于0但当我使用x.at(i)时没有值的向量).
我在论坛中寻找,但关于temprorary和const ref的答案并没有帮助我理解这一点.
谢谢.
我发现无论有algorithm没有命名空间都可以使用库的许多(也许是所有)函数std:例如,何时algorithm导入:
#include <algorithm>
Run Code Online (Sandbox Code Playgroud)
std::unique并且unique似乎是等价的。下面是一个例子:
#include <iostream>
#include <vector>
#include <algorithm>
int main () {
std::vector<int> v = {10,20,20,20,30,30,20,20,10};
std::vector<int>::iterator it;
it = std::unique (v.begin(), v.end());
for (it=v.begin(); it!=v.end(); ++it)
std::cout << ' ' << *it;
std::cout << '\n';
it = unique (v.begin(), v.end());
for (it=v.begin(); it!=v.end(); ++it)
std::cout << ' ' << *it;
std::cout << '\n';
}
Run Code Online (Sandbox Code Playgroud)
输出:
10 20 30 20 10 30 20 20 10
10 20 30 20 …Run Code Online (Sandbox Code Playgroud)