Я пытаюсь обернуть голову еще несколькими расширенными точками классов C++, а также, возможно, (или, по крайней мере, с GNU) компиляторами/встроенными функциями. Все это основано на концепции журнала для крупного и обширного рабочего проекта. Который подводит меня к этому псев-коду:Автоматический вызов функций базового класса
class Base {
public:
void increment(){
++m_Val;
}
private:
static int m_Val;
};
class Above : private Base{
public:
void doA(){
//Foo
}
void doB(){
//Bar
}
};
Это было показано как концепция; есть ли способ, чтобы простое наследование базы позволяло doA()
и doB()
неявно вызвать базовую функцию increment()
без меня, фактически добавляя вызов функции к increment()
в каждую отдельную функцию каждого отдельного класса, который наследует ее? Если не прямой ответ, существует ли конкретный термин для того, что я хочу сделать? Или это предлагается как часть Boost или других библиотек?
i не думаю, что есть. –
Возможно, вас заинтересует [аспектно-ориентированное программирование] (https://en.wikipedia.org/wiki/Aspect-oriented_programming). – AlexD
@ DanielA.White Определенно, чего я боялся. Я знаю, что C++ по-прежнему является «растущим» языком, но не был уверен, что есть способ сделать это до или после какого-то «взломанного кода». – M4rc