KnowledgeHub
Questions
Tags
Users
Search
Alex Rivera
|
Logout
Edit Question
Title
Body
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 } even int i=10; const int j=i; CAT<j> cat; //this still can not work but I have convert i to const int ,why compiler still report error ? my platform is ubuntu,gcc version 4.4.3 Thanks, ============== Thanks all for your input, but in some cases,I need a non-const variable , for example: //alloperations.h enum OPERATIONS { GETPAGE_FROM_WEBSITE1, GETPAGE_FROM_WEBSITE2, .... }; template< OPERATIONS op > class CHandlerPara { static string parameters1; static string parameters2; .... static void resultHandler(); }; //for different operations,we need a different parameter, to achieve this //we specified parameters inside CHandler, for example template<> string CHandlerPara< GETPAGE_FROM_WEBSITE1 >::parameters1("&userid=?&info=?..") template<> string CHandlerPara< GETPAGE_FROM_WEBSITE1 >::parameters2("...") other module will using this template to get corresponding parameter and maybe specilize the resultHandler function for a special behavior
Tags (comma-separated)
Save Edits
Cancel