这个Python切片语句的C++等效代码是什么
What is the C++ equivalent code of this Python slicing statement?
我正在尝试将以下Python语句翻译成C++:
some_array = [11, 22, 33, 44]
first, rest = some_array[0], some_array[1:]
到目前为止,我所拥有的是:
int array[4] = {11, 22, 33, 44};
vector<int> some_array (array, 4);
int first = some_array.front();
vector<int> rest = some_array;
rest.erase(rest.begin());
- 如何缩短和/或有效地重写
- 这可以在不使用C++模板和/或向量的情况下编写吗
- 有没有一个在线服务(或软件)可以将这些不平凡的Python代码片段翻译成人类可读的C++代码
这:
vector<int> rest = some_array;
rest.erase(rest.begin());
可以缩短为:
vector<int> rest(some_array.begin() + 1, some_array.end());
如果你可以使用C++11,你可以将整个代码缩短为:
vector<int> some_array { 11, 22, 33, 44 };
int first = some_array.front();
vector<int> rest (some_array.begin() + 1, some_array.end());
尽管我怀疑这会是一个很大的优势。。。
最简单的方法是
#include <iostream>
#include <vector>
using namespace std;
int main() {
vector<int> arr = {11, 22, 33, 44};
int first = arr[0];
vector<int> rest;
for (int i = 1; i < arr.size(); i++) {
rest.push_back(arr[i]);
}
return 0;
}
或者你也可以这样做,
#include <iostream>
#include <vector>
using namespace std;
int main() {
vector<int> arr = {11, 22, 33, 44};
int first = arr[0];
vector<int> rest(arr.begin() + 1, arr.end());
return 0;
}
相关文章:
- 获取英特尔 Kaby Lake 架构上最后一级高速缓存未命中计数的确切代码是什么?
- 这行代码是什么意思
- 此练习的C 代码是什么
- c++ 中的代码是什么意思
- 这个代码是什么意思 std::vector<cv::P oint2f> points[2]
- 这一小堆代码是什么意思
- C++向量,这段代码是什么意思
- 在 c++ 中加减分数的代码是什么
- 验证给定C++编译器是否将源代码读取为 C++11 的快速简单代码是什么?
- DllMain 中钩子回调函数的入口代码是什么
- static_cast<T* 易失性*> - 此代码是什么意思?
- 任务杀死实用程序的退出代码是什么
- GCC 发出的 vtable 汇编代码中的那两个长代码是什么?
- 这C++代码是什么意思?'const ResTable&res = am->getResources();'
- 这个Python切片语句的C++等效代码是什么
- 在链表形成中,在开头添加变量的代码是什么
- MinGW .exe 需要一些 gcc dll 的,不管代码是什么?
- &x 输出到控制台的代码是什么?
- 类型铸造?样板这行cpp代码是什么
- 这行代码是什么意思*((int*)(0))=1;