class AAA {
public:
enum BBB {
ITEM1 = 1
};
enum CCC {
ITEM1 = 2
};
};

こうするとエラーになります。
AAA::BBB::ITEM1 と AAA:CCC:ITEM1 は区別される物ではなく、
むしろ両方 AAA::ITEM1 ということでしょうか?