19 template <
class T> std::pair<T, T>
operator+(
const std::pair<T, T>&
one,
const std::pair<T, T>& two) {
20 std::pair<T, T>
r(one.first + two.first, one.second + two.second);
27 template <
class T> std::pair<T, T>
operator-(
const std::pair<T, T>&
one,
const std::pair<T, T>& two) {
28 std::pair<T, T>
r(one.first - two.first, one.second - two.second);
35 template <
class T> std::ostream& operator<<(std::ostream& s, const std::pair<T, T>& aT) {
36 s <<
"(" << aT.first <<
", " << aT.second <<
")";
44 for(
typename std::map<K, V>::const_iterator cit = extract.begin(); cit != extract.end(); ++cit) {
45 output.push_back((*cit).second);
53 for(
typename std::map<K, V>::const_iterator cit = extract.begin(); cit != extract.end(); ++cit) {
54 output.push_back((*cit).first);
std::pair< T, T > operator-(const std::pair< T, T > &one, const std::pair< T, T > &two)
void valueVector(const std::map< K, V > &extract, std::vector< V > &output)
std::pair< T, T > operator+(const std::pair< T, T > &one, const std::pair< T, T > &two)
void keyVector(const std::map< K, V > &extract, std::vector< K > &output)
int extract(std::vector< int > *output, const std::string &dati)