Если у меня есть спецификация класса шаблона, как так, < /p>
template
class MyClass {
public:
void fun1();
// ...
void funN();
};
template
void MyClass::fun1() {
// definition
}
// ...
template
void MyClass::funN() {
// definition
}
< /code>
Если я изменю шаблон класса на что -то еще, скажем, я добавляю дополнительный параметр: < /p>
template
class MyClass {
// ...
};
< /code>
Тогда я должен изменить определение каждой функции (fun1, ..., funn), чтобы согласиться с спецификацией шаблона класса: < /p>
template
void MyClass::fun1() { //... }
< /code>
Есть ли какие -либо стратегии для этого? Могу ли я использовать макросы, например, < /p>
#define DFLT_TEMPLATE template
#define DFLT_CLASS class
DFLT_TEMPLATE
void DFLT_CLASS::fun1() { // ... }
< /code>
или это считается плохой практикой? < /p>
Подробнее здесь: https://stackoverflow.com/questions/419 ... mber-funct