J>Неочевидное какое-то разрешения имен, если бы я так хотел, я бы сделал A::b = A::b,(хотя это бред)
J>Может где-то можно более подробно прочитать об этом частном случае?
Я согласен, оно неочевидно. Как и многие вещи в С++. И чтобы их узнать придется либо примеры самому писать (что очень занудно и не очень надежно, так как разные компиляторы любят глючить по-разному). А лучше почитать в книгах. Правда, авторы книг, такими "мелочами" обычно пренебрегают, и потому надежнее глянуть в стандарт С++. это в пунтке 3.4.3/3, по-моему.
In a declaration in which the declarator-id is a qualified-id, names used before the qualified-id being declared are looked up in the defining namespace scope; names following the qualified-id are looked up in the scope of the member's class or namespace.
ЗЫ
Надеюсь с цитатой не ошибся