//: C05:Transform.cpp // From Thinking in C++, 2nd Edition // Available at http://www.BruceEckel.com // (c) Bruce Eckel 2000 // Copyright notice in Copyright.txt // Use of STL transform() algorithm #include "Counted.h" #include #include #include using namespace std; template T* deleteP(T* x) { delete x; return 0; } template struct Deleter { T* operator()(T* x) { delete x; return 0; } }; int main() { CountedVector cv("one"); transform(cv.begin(), cv.end(), cv.begin(), deleteP); CountedVector cv2("two"); transform(cv2.begin(), cv2.end(), cv2.begin(), Deleter()); } ///:~