C ++ enum no foreach [duplicado]

Possíveis duplicatas:
Enumerar sobre uma enumeração em C ++
C ++: itera através de uma enumeração

Eu tenho uma classe de cartas para um jogo de blackjack com as seguintes enumerações:

enum Rank { Ace, Two, Three, Four, Five, Six, Seven, Eight, Nine, Ten, Jack, Queen, King };
enum Suit { Clubs, Diamonds, Hearts, Spades };

Quando crio o baralho, quero escrever o código assim:

// foreach Suit in Card::Suit
//   foreach Rank in Card::Rank
//     add new card(rank, suit) to deck

Eu acredito que não há foreach em c ++. No entanto, como atravessar uma enumeração?

Obrigado, Spencer

questionAnswers(1)

yourAnswerToTheQuestion