Если бы C ++. NET допускал множественное наследование, у меня были бы общие методы в классе и производные от него.
У меня есть классы, производные от Panel, Label, TabControl ... у которых точно такие же методы,
Как я могу структурировать свой код C ++ так, чтобы я писал свои общие методы только один раз?
Вот простой пример свойства, которое я хочу добавить в каждый производный класс.Методы расширения звучат идеально, но не существуют в C ++.
private: int panelBottomMargin;
public:
[Browsable(true)]
[CategoryAttribute("Layout"), DescriptionAttribute(
"Specify the gap between the last control and the bottom of the panel"),
DefaultValueAttribute(panelBottomMarginDefault)]
[DesignerSerializationVisibility(DesignerSerializationVisibility::Visible)]
property int PanelBottomMargin
{
int get() { return this->panelBottomMargin; }
void set(int margin) { this->panelBottomMargin = margin; }
}