Класс с большим количеством полей

Однажды у меня возникла проблема с тем, что мне нужно было в одном классе работать с большим количеством полей.

class MyClass
{
    
public:
    MyClass(Type field1, Type field2, ...);
    
    Type getField1();
    Type getField2();
    ...
    
private:
    Type m_field1;
    Type m_field2;
    ...
}

Конечно, как я понял, в том случае проблема была в плохом проектировании программы :) Но всё таки, если понадобится сделать класс в котором будет достаточно много полей, то (лично мне) будет лень для каждого из них прописывать геттер, и писать всю эту колбасу в конструкторе. Нормальна ли тогда такая практика:

struct MyClassInfo
{
    Type field1;
    Type field2;
    ...
}

class MyClass
{
public:
    MyClass(MyClassInfo info);
    
    const MyClassInfo & getMyClassInfo();
    
private:
    MyClassInfo m_info;
}

Ответы (0 шт):