[ create a new paste ] login | about

Link: http://codepad.org/6qwwFAVd    [ raw code | output | fork ]

C++, pasted on Mar 16:
    #include <iostream>
    
    template <typename T, typename F> 
    void closed_range(T begin, T end, F functionToPerform)  
    { 
        for (T i = begin; i != end; ++i) {  
            functionToPerform(i); 
        } 
        functionToPerform(end); 
    }  
    
    template <typename T>
    void doSomething(T value)
    {
      std::cout << "doSomething(" << value << ")" << std::endl;
    }
    
    int main() 
    { 
      closed_range( numeric_limits<int>::max() - 10, numeric_limits<int>::max(), doSomething<int> ); 
      return 0; 
    } 


Output:
1
2
3
4
5
6
7
8
9
10
11
doSomething(2147483637)
doSomething(2147483638)
doSomething(2147483639)
doSomething(2147483640)
doSomething(2147483641)
doSomething(2147483642)
doSomething(2147483643)
doSomething(2147483644)
doSomething(2147483645)
doSomething(2147483646)
doSomething(2147483647)


Create a new paste based on this one


Comments: