|
|
|
|
|
by rkts
6215 days ago
|
|
C++ version: template<typename T>
void zap (T (*f)(T x), T &x) { x = f(x); }
Example: int square (int x) { return x*x; }
int foo[5] = {1,2,3,4,5};
zap<int>(square, foo[3]); // foo is now {1,2,3,16,5}
Admittely, the <int> is a little ugly, but that can probably be fixed with Hindley-Milner (or just plain dynamic typing). |
|