Lập trình siêu chương trình tĩnh (hay còn gọi là "siêu lập trình mẫu") là một kỹ thuật C ++ tuyệt vời cho phép thực thi các chương trình tại thời điểm biên dịch. Một bóng đèn vụt tắt trong đầu tôi ngay khi tôi đọc ví dụ về lập trình ẩn dụ kinh điển này:
#include <iostream>
using namespace std;
template< int n >
struct factorial { enum { ret = factorial< n - 1 >::ret * n }; };
template<>
struct factorial< 0 > { enum { ret = 1 }; };
int main() {
cout << "7! = " << factorial< 7 >::ret << endl; // 5040
return 0;
}
Nếu một người muốn tìm hiểu thêm về lập trình ẩn C ++ tĩnh, thì đâu là nguồn tốt nhất (sách, trang web, phần mềm học trực tuyến, bất cứ thứ gì)?