#pragma once class IComponent { public: IComponent() {} virtual ~IComponent() {} virtual double getValue() = 0; };