Uhm ma hai intenzione di usare C++ o usi il C ?
Se vuoi usare il C++, usa gli oggetti.

C++ - OOP

Se vuoi conoscere il tipo dell'elettrodomestico fai una classe Elettrodomestico, lo fai ereditare da Lavatrice, Lavastoviglie eccc... e usando gli enum puoi creare un attributo tipoElettrodomestico che farai overridare da ogni subclasse, settato con il tipo elettrodomestico.

codice:
typedef enum { LAVATRICE, LAVASTOVIGLIE } TipoElettrodomestico;
class Elettrodomestico {
    public:
        virtual TipoElettrodomestico getTipo() = 0;
    ....
};

class Lavastoviglie : virtual public Elettrodomestico {
    public:
        TipoElettrodomestico getTipo () {
            return TipoElettrodomestico.LAVASTOVIGLIE;
        };
};
questo è un esempio, ovviamente Elettrodomestico è una classe astratta (anche tu sai il perchè )