📄 16-3.cpp
字号:
//
// Yet more examples from Item 16
//
// Fails under MSVC/native lib (lacks range insert)
//
#include <iostream>
#include <vector>
#include <cstring>
#include <set>
#include "ESTLUtil.h"
int data[] = { -30, 102, 55, -19, 0, 222, -3000, 4000, 8, -2 };
const int numValues = sizeof data / sizeof(int);
void doSomething(const int* pInts, size_t numInts)
{
int sum = 0;
for (size_t i = 0; i < numInts; i++)
sum += pInts[i];
std::cout << "Sum of ints in the array is " << sum << std::endl;
}
int main()
{
using namespace std;
using namespace ESTLUtils;
set<int> intSet; // set that will hold
// data to pass to API
intSet.insert(data, data + numValues); // insert the ints in data
// into the set
vector<int> v(intSet.begin(), intSet.end()); // copy set data into
// a vector
if (!v.empty()) doSomething(&v[0], v.size()); // pass the data to
// the API
return 0;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -