Локальный класс — это класс, определённый внутри области видимости функции (либо функции-члена, либо обычной функции). Локальные классы существуют только в пределах области видимости этой функции и не могут быть доступны снаружи.
int f() {
class LocalClass {
// определение класса
};
// LocalClass можно использовать только здесь
}
Локальные классы особенно полезны, когда тебе нужен вспомогательный тип, который:
Такой подход следует принципу сохранения области видимости как можно более узкой, что является хорошей практикой в C++ для поддержки чистого и удобного кода.
Локальный класс, определённый внутри функции, может быть доступен и инстанцирован другими member functions того же содержащего класса.
Новый — ещё не проверен сообществом
Вы