template < int > class CAT {}; int main() { int i=10; CAT<(const int)i> cat; return 0; //here I got error: ‘i’ cannot appear in a constant-expression } sogar int i=10; const int j=i; CAT<j> cat; //this