2012-01-09 78 views

回答

6

使用std::swap

enum Foo { 
    CAT, 
    DOG, 
    ELEPHANT 
}; 

Foo a = CAT; 
Foo b = ELEPHANT; 

std::swap(a, b); 

std::cout << (a == ELEPHANT) << "\n"; 

enum是完全標準;它們相當於整數類型。

0

您無需編寫交換功能,std::swap開箱即用。

enum是標準的C++。 enum值在內存中表示爲整數類型,默認情況下爲int。你可以用例如C++ 11來改變這個表示。

enum Foo : short { A, B, C }; 
0

正好,只是使用std::swap(....)

相關問題