romanosovsky
本帖最后由
>>
完整版
本帖最后由 romanosovsky 于 2012-4-20 23:40 编辑
转代码。c++的
http://okmij.org/ftp/cpp-digest/Lambda-CPP-more.html
template<typename T>
class CurryAdd {
T a;
public:
CurryAdd(const T a) { this->a = a; }
CurryAdd *本站禁止HTML标签噢* operator() (const T b) { return CurryAdd *本站禁止HTML标签噢* (a + b); }
operator T(void) { return a; }
};
template<typename T>
CurryAdd *本站禁止HTML标签噢* cadd(const T a) { return CurryAdd *本站禁止HTML标签噢* (a); }
main() {
cout << cadd(1) << endl;
cout << cadd(1)(2) << endl;
cout << cadd(1)(2)(3) << endl;
cout << cadd(3.4)(4.5) << endl;
cout << cadd(1)(3.5) << endl; // careful !
}
<和>被转成lt gt了@62#