другом писать его реализацию?
скажем:
есть something.h там форвард деклашион someClass, потом в someclass.cpp писать реализацию и в something.cpp использовать someClass
под "можно ли" имею ввиду не ошибку компилятора а не будут ли бить по рукам потом?
так так и делают
А зачем форвард декларацию в хедере делать? Если класс локален для конкретного cpp, то его там определяешь и всё А если он в других местах нужен, то не факт, что везде зависимость от него только по имени будет. Зачастую он для других TU не должен быть incomplete
Обсуждают сегодня