我最近被給了一個面試問題,它有以下代碼。不幸的是,我沒有把它做對。有人能幫忙解釋一下代碼在做什麼,特別是註釋行嗎?這個C++代碼中插入了什麼值?
這是代碼。
#include <iostream>
#include <set>
struct C
{
bool operator()(const int &a, const int &b) const
{
return a % 10 < b % 10;
}
};
int main()
{
std::set<int> x({ 4, 2, 7, 11, 12, 14, 17, 2 });
std::cout << x.size();
std::set<int, C> y(x.begin(), x.end()); // Not sure what is inserted in the set
std::cout << y.size() << std::endl;
return 0;
}
運行它並找出? – NathanOliver
我預測'{11,2,4,7}'(我沒有運行這個例子,誠實)。 –
http://ideone.com/8eL2f4我很親切 –