Похоже, вы пытаетесь сделать класс typedef, как вы можете, скажем, в C ++.Я не помню, допускается ли это даже в Objective-C, но это не то, как бы я это сделал здесь в любом случае.Я бы держал enum вне класса.Просто создайте еще один заголовочный файл с помощью typedef.Хотя это своего рода тривиальный пример, могут быть другие применения для этого перечисления вне класса Distance, поэтому определите его снаружи.
Другая возможность, если это все, для чего вы ее используете, это иметь два инициализатора initWithMiles:
и initWithKilometers:
.