Here is the line of code bolded and the function that produces the errors.
Code:
void Player::draw(int hand_index, Deck * deck, int number)
{
	for(int loop = 0; loop < number; loop++)
	{
		/* place card in player's hand */
		m_player_hands[hand_index].m_card_list.push_back(deck->m_cards.back());

		/* hide all dealer cards except for the first one */
		if (m_player_id == 0 && loop != 0)
		{
			m_player_hands[0].m_card_list[loop].flip_card(false);
		}
		/* remove card from deck */
		deck->m_cards.pop_back();
	}
}

Here is the state of all my watch variables during runtime

Code:
-		deck	0x00359ab8 {m_cards=[52]({m_suit=-858993460 m_value=-858993460 suits_lookup=[4]("Clubs","Diamonds","Hearts","Spades") ...},{m_suit=-858993460 m_value=-858993460 suits_lookup=[4]("Clubs","Diamonds","Hearts","Spades") ...},{m_suit=-858993460 m_value=-858993460 suits_lookup=[4]("Clubs","Diamonds","Hearts","Spades") ...},{m_suit=-858993460 m_value=-858993460 suits_lookup=[4]("Clubs","Diamonds","Hear 	Deck *
-		m_cards	[52]({m_suit=-858993460 m_value=-858993460 suits_lookup=[4]("Clubs","Diamonds","Hearts","Spades") ...},{m_suit=-858993460 m_value=-858993460 suits_lookup=[4]("Clubs","Diamonds","Hearts","Spades") ...},{m_suit=-858993460 m_value=-858993460 suits_lookup=[4]("Clubs","Diamonds","Hearts","Spades") ...},{m_suit=-858993460 m_value=-858993460 suits_lookup=[4]("Clubs","Diamonds","Hearts","Spades") ...},...,...)	std::vector<Card,std::allocator<Card> >
+		[0]	{m_suit=-858993460 m_value=-858993460 suits_lookup=[4]("Clubs","Diamonds","Hearts","Spades") ...}	Card
+		[1]	{m_suit=-858993460 m_value=-858993460 suits_lookup=[4]("Clubs","Diamonds","Hearts","Spades") ...}	Card
+		[2]	{m_suit=-858993460 m_value=-858993460 suits_lookup=[4]("Clubs","Diamonds","Hearts","Spades") ...}	Card
+		[3]	{m_suit=-858993460 m_value=-858993460 suits_lookup=[4]("Clubs","Diamonds","Hearts","Spades") ...}	Card
+		[4]	{m_suit=-858993460 m_value=-858993460 suits_lookup=[4]("Clubs","Diamonds","Hearts","Spades") ...}	Card
+		[5]	{m_suit=-858993460 m_value=-858993460 suits_lookup=[4]("Clubs","Diamonds","Hearts","Spades") ...}	Card
+		[6]	{m_suit=-858993460 m_value=-858993460 suits_lookup=[4]("Clubs","Diamonds","Hearts","Spades") ...}	Card
+		[7]	{m_suit=-858993460 m_value=-858993460 suits_lookup=[4]("Clubs","Diamonds","Hearts","Spades") ...}	Card
+		[8]	{m_suit=-858993460 m_value=-858993460 suits_lookup=[4]("Clubs","Diamonds","Hearts","Spades") ...}	Card
+		[9]	{m_suit=-858993460 m_value=-858993460 suits_lookup=[4]("Clubs","Diamonds","Hearts","Spades") ...}	Card
+		[10]	{m_suit=-858993460 m_value=-858993460 suits_lookup=[4]("Clubs","Diamonds","Hearts","Spades") ...}	Card
+		[11]	{m_suit=-858993460 m_value=-858993460 suits_lookup=[4]("Clubs","Diamonds","Hearts","Spades") ...}	Card
+		[12]	{m_suit=-858993460 m_value=-858993460 suits_lookup=[4]("Clubs","Diamonds","Hearts","Spades") ...}	Card
+		[13]	{m_suit=-858993460 m_value=-858993460 suits_lookup=[4]("Clubs","Diamonds","Hearts","Spades") ...}	Card
+		[14]	{m_suit=-858993460 m_value=-858993460 suits_lookup=[4]("Clubs","Diamonds","Hearts","Spades") ...}	Card
+		[15]	{m_suit=-858993460 m_value=-858993460 suits_lookup=[4]("Clubs","Diamonds","Hearts","Spades") ...}	Card
+		[16]	{m_suit=-858993460 m_value=-858993460 suits_lookup=[4]("Clubs","Diamonds","Hearts","Spades") ...}	Card
+		[17]	{m_suit=-858993460 m_value=-858993460 suits_lookup=[4]("Clubs","Diamonds","Hearts","Spades") ...}	Card
+		[18]	{m_suit=-858993460 m_value=-858993460 suits_lookup=[4]("Clubs","Diamonds","Hearts","Spades") ...}	Card
+		[19]	{m_suit=-858993460 m_value=-858993460 suits_lookup=[4]("Clubs","Diamonds","Hearts","Spades") ...}	Card
+		[20]	{m_suit=-858993460 m_value=-858993460 suits_lookup=[4]("Clubs","Diamonds","Hearts","Spades") ...}	Card
+		[21]	{m_suit=-858993460 m_value=-858993460 suits_lookup=[4]("Clubs","Diamonds","Hearts","Spades") ...}	Card
+		[22]	{m_suit=-858993460 m_value=-858993460 suits_lookup=[4]("Clubs","Diamonds","Hearts","Spades") ...}	Card
+		[23]	{m_suit=-858993460 m_value=-858993460 suits_lookup=[4]("Clubs","Diamonds","Hearts","Spades") ...}	Card
+		[24]	{m_suit=-858993460 m_value=-858993460 suits_lookup=[4]("Clubs","Diamonds","Hearts","Spades") ...}	Card
+		[25]	{m_suit=-858993460 m_value=-858993460 suits_lookup=[4]("Clubs","Diamonds","Hearts","Spades") ...}	Card
+		[26]	{m_suit=-858993460 m_value=-858993460 suits_lookup=[4]("Clubs","Diamonds","Hearts","Spades") ...}	Card
+		[27]	{m_suit=-858993460 m_value=-858993460 suits_lookup=[4]("Clubs","Diamonds","Hearts","Spades") ...}	Card
+		[28]	{m_suit=-858993460 m_value=-858993460 suits_lookup=[4]("Clubs","Diamonds","Hearts","Spades") ...}	Card
+		[29]	{m_suit=-858993460 m_value=-858993460 suits_lookup=[4]("Clubs","Diamonds","Hearts","Spades") ...}	Card
+		[30]	{m_suit=-858993460 m_value=-858993460 suits_lookup=[4]("Clubs","Diamonds","Hearts","Spades") ...}	Card
+		[31]	{m_suit=-858993460 m_value=-858993460 suits_lookup=[4]("Clubs","Diamonds","Hearts","Spades") ...}	Card
+		[32]	{m_suit=-858993460 m_value=-858993460 suits_lookup=[4]("Clubs","Diamonds","Hearts","Spades") ...}	Card
+		[33]	{m_suit=-858993460 m_value=-858993460 suits_lookup=[4]("Clubs","Diamonds","Hearts","Spades") ...}	Card
+		[34]	{m_suit=-858993460 m_value=-858993460 suits_lookup=[4]("Clubs","Diamonds","Hearts","Spades") ...}	Card
+		[35]	{m_suit=-858993460 m_value=-858993460 suits_lookup=[4]("Clubs","Diamonds","Hearts","Spades") ...}	Card
+		[36]	{m_suit=-858993460 m_value=-858993460 suits_lookup=[4]("Clubs","Diamonds","Hearts","Spades") ...}	Card
+		[37]	{m_suit=-858993460 m_value=-858993460 suits_lookup=[4]("Clubs","Diamonds","Hearts","Spades") ...}	Card
+		[38]	{m_suit=-858993460 m_value=-858993460 suits_lookup=[4]("Clubs","Diamonds","Hearts","Spades") ...}	Card
+		[39]	{m_suit=-858993460 m_value=-858993460 suits_lookup=[4]("Clubs","Diamonds","Hearts","Spades") ...}	Card
+		[40]	{m_suit=-858993460 m_value=-858993460 suits_lookup=[4]("Clubs","Diamonds","Hearts","Spades") ...}	Card
+		[41]	{m_suit=-858993460 m_value=-858993460 suits_lookup=[4]("Clubs","Diamonds","Hearts","Spades") ...}	Card
+		[42]	{m_suit=-858993460 m_value=-858993460 suits_lookup=[4]("Clubs","Diamonds","Hearts","Spades") ...}	Card
+		[43]	{m_suit=-858993460 m_value=-858993460 suits_lookup=[4]("Clubs","Diamonds","Hearts","Spades") ...}	Card
+		[44]	{m_suit=-858993460 m_value=-858993460 suits_lookup=[4]("Clubs","Diamonds","Hearts","Spades") ...}	Card
+		[45]	{m_suit=-858993460 m_value=-858993460 suits_lookup=[4]("Clubs","Diamonds","Hearts","Spades") ...}	Card
+		[46]	{m_suit=-858993460 m_value=-858993460 suits_lookup=[4]("Clubs","Diamonds","Hearts","Spades") ...}	Card
+		[47]	{m_suit=-858993460 m_value=-858993460 suits_lookup=[4]("Clubs","Diamonds","Hearts","Spades") ...}	Card
+		[48]	{m_suit=-858993460 m_value=-858993460 suits_lookup=[4]("Clubs","Diamonds","Hearts","Spades") ...}	Card
+		[49]	{m_suit=-858993460 m_value=-858993460 suits_lookup=[4]("Clubs","Diamonds","Hearts","Spades") ...}	Card
+		[50]	{m_suit=-858993460 m_value=-858993460 suits_lookup=[4]("Clubs","Diamonds","Hearts","Spades") ...}	Card
+		[51]	{m_suit=-858993460 m_value=-858993460 suits_lookup=[4]("Clubs","Diamonds","Hearts","Spades") ...}	Card
-		deck->m_cards	[52]({m_suit=-858993460 m_value=-858993460 suits_lookup=[4]("Clubs","Diamonds","Hearts","Spades") ...},{m_suit=-858993460 m_value=-858993460 suits_lookup=[4]("Clubs","Diamonds","Hearts","Spades") ...},{m_suit=-858993460 m_value=-858993460 suits_lookup=[4]("Clubs","Diamonds","Hearts","Spades") ...},{m_suit=-858993460 m_value=-858993460 suits_lookup=[4]("Clubs","Diamonds","Hearts","Spades") ...},...,...)	std::vector<Card,std::allocator<Card> >
+		[0]	{m_suit=-858993460 m_value=-858993460 suits_lookup=[4]("Clubs","Diamonds","Hearts","Spades") ...}	Card
+		[1]	{m_suit=-858993460 m_value=-858993460 suits_lookup=[4]("Clubs","Diamonds","Hearts","Spades") ...}	Card
+		[2]	{m_suit=-858993460 m_value=-858993460 suits_lookup=[4]("Clubs","Diamonds","Hearts","Spades") ...}	Card
+		[3]	{m_suit=-858993460 m_value=-858993460 suits_lookup=[4]("Clubs","Diamonds","Hearts","Spades") ...}	Card
+		[4]	{m_suit=-858993460 m_value=-858993460 suits_lookup=[4]("Clubs","Diamonds","Hearts","Spades") ...}	Card
+		[5]	{m_suit=-858993460 m_value=-858993460 suits_lookup=[4]("Clubs","Diamonds","Hearts","Spades") ...}	Card
+		[6]	{m_suit=-858993460 m_value=-858993460 suits_lookup=[4]("Clubs","Diamonds","Hearts","Spades") ...}	Card
+		[7]	{m_suit=-858993460 m_value=-858993460 suits_lookup=[4]("Clubs","Diamonds","Hearts","Spades") ...}	Card
+		[8]	{m_suit=-858993460 m_value=-858993460 suits_lookup=[4]("Clubs","Diamonds","Hearts","Spades") ...}	Card
+		[9]	{m_suit=-858993460 m_value=-858993460 suits_lookup=[4]("Clubs","Diamonds","Hearts","Spades") ...}	Card
+		[10]	{m_suit=-858993460 m_value=-858993460 suits_lookup=[4]("Clubs","Diamonds","Hearts","Spades") ...}	Card
+		[11]	{m_suit=-858993460 m_value=-858993460 suits_lookup=[4]("Clubs","Diamonds","Hearts","Spades") ...}	Card
+		[12]	{m_suit=-858993460 m_value=-858993460 suits_lookup=[4]("Clubs","Diamonds","Hearts","Spades") ...}	Card
+		[13]	{m_suit=-858993460 m_value=-858993460 suits_lookup=[4]("Clubs","Diamonds","Hearts","Spades") ...}	Card
+		[14]	{m_suit=-858993460 m_value=-858993460 suits_lookup=[4]("Clubs","Diamonds","Hearts","Spades") ...}	Card
+		[15]	{m_suit=-858993460 m_value=-858993460 suits_lookup=[4]("Clubs","Diamonds","Hearts","Spades") ...}	Card
+		[16]	{m_suit=-858993460 m_value=-858993460 suits_lookup=[4]("Clubs","Diamonds","Hearts","Spades") ...}	Card
+		[17]	{m_suit=-858993460 m_value=-858993460 suits_lookup=[4]("Clubs","Diamonds","Hearts","Spades") ...}	Card
+		[18]	{m_suit=-858993460 m_value=-858993460 suits_lookup=[4]("Clubs","Diamonds","Hearts","Spades") ...}	Card
+		[19]	{m_suit=-858993460 m_value=-858993460 suits_lookup=[4]("Clubs","Diamonds","Hearts","Spades") ...}	Card
+		[20]	{m_suit=-858993460 m_value=-858993460 suits_lookup=[4]("Clubs","Diamonds","Hearts","Spades") ...}	Card
+		[21]	{m_suit=-858993460 m_value=-858993460 suits_lookup=[4]("Clubs","Diamonds","Hearts","Spades") ...}	Card
+		[22]	{m_suit=-858993460 m_value=-858993460 suits_lookup=[4]("Clubs","Diamonds","Hearts","Spades") ...}	Card
+		[23]	{m_suit=-858993460 m_value=-858993460 suits_lookup=[4]("Clubs","Diamonds","Hearts","Spades") ...}	Card
+		[24]	{m_suit=-858993460 m_value=-858993460 suits_lookup=[4]("Clubs","Diamonds","Hearts","Spades") ...}	Card
+		[25]	{m_suit=-858993460 m_value=-858993460 suits_lookup=[4]("Clubs","Diamonds","Hearts","Spades") ...}	Card
+		[26]	{m_suit=-858993460 m_value=-858993460 suits_lookup=[4]("Clubs","Diamonds","Hearts","Spades") ...}	Card
+		[27]	{m_suit=-858993460 m_value=-858993460 suits_lookup=[4]("Clubs","Diamonds","Hearts","Spades") ...}	Card
+		[28]	{m_suit=-858993460 m_value=-858993460 suits_lookup=[4]("Clubs","Diamonds","Hearts","Spades") ...}	Card
+		[29]	{m_suit=-858993460 m_value=-858993460 suits_lookup=[4]("Clubs","Diamonds","Hearts","Spades") ...}	Card
+		[30]	{m_suit=-858993460 m_value=-858993460 suits_lookup=[4]("Clubs","Diamonds","Hearts","Spades") ...}	Card
+		[31]	{m_suit=-858993460 m_value=-858993460 suits_lookup=[4]("Clubs","Diamonds","Hearts","Spades") ...}	Card
+		[32]	{m_suit=-858993460 m_value=-858993460 suits_lookup=[4]("Clubs","Diamonds","Hearts","Spades") ...}	Card
+		[33]	{m_suit=-858993460 m_value=-858993460 suits_lookup=[4]("Clubs","Diamonds","Hearts","Spades") ...}	Card
+		[34]	{m_suit=-858993460 m_value=-858993460 suits_lookup=[4]("Clubs","Diamonds","Hearts","Spades") ...}	Card
+		[35]	{m_suit=-858993460 m_value=-858993460 suits_lookup=[4]("Clubs","Diamonds","Hearts","Spades") ...}	Card
+		[36]	{m_suit=-858993460 m_value=-858993460 suits_lookup=[4]("Clubs","Diamonds","Hearts","Spades") ...}	Card
+		[37]	{m_suit=-858993460 m_value=-858993460 suits_lookup=[4]("Clubs","Diamonds","Hearts","Spades") ...}	Card
+		[38]	{m_suit=-858993460 m_value=-858993460 suits_lookup=[4]("Clubs","Diamonds","Hearts","Spades") ...}	Card
+		[39]	{m_suit=-858993460 m_value=-858993460 suits_lookup=[4]("Clubs","Diamonds","Hearts","Spades") ...}	Card
+		[40]	{m_suit=-858993460 m_value=-858993460 suits_lookup=[4]("Clubs","Diamonds","Hearts","Spades") ...}	Card
+		[41]	{m_suit=-858993460 m_value=-858993460 suits_lookup=[4]("Clubs","Diamonds","Hearts","Spades") ...}	Card
+		[42]	{m_suit=-858993460 m_value=-858993460 suits_lookup=[4]("Clubs","Diamonds","Hearts","Spades") ...}	Card
+		[43]	{m_suit=-858993460 m_value=-858993460 suits_lookup=[4]("Clubs","Diamonds","Hearts","Spades") ...}	Card
+		[44]	{m_suit=-858993460 m_value=-858993460 suits_lookup=[4]("Clubs","Diamonds","Hearts","Spades") ...}	Card
+		[45]	{m_suit=-858993460 m_value=-858993460 suits_lookup=[4]("Clubs","Diamonds","Hearts","Spades") ...}	Card
+		[46]	{m_suit=-858993460 m_value=-858993460 suits_lookup=[4]("Clubs","Diamonds","Hearts","Spades") ...}	Card
+		[47]	{m_suit=-858993460 m_value=-858993460 suits_lookup=[4]("Clubs","Diamonds","Hearts","Spades") ...}	Card
+		[48]	{m_suit=-858993460 m_value=-858993460 suits_lookup=[4]("Clubs","Diamonds","Hearts","Spades") ...}	Card
+		[49]	{m_suit=-858993460 m_value=-858993460 suits_lookup=[4]("Clubs","Diamonds","Hearts","Spades") ...}	Card
+		[50]	{m_suit=-858993460 m_value=-858993460 suits_lookup=[4]("Clubs","Diamonds","Hearts","Spades") ...}	Card
+		[51]	{m_suit=-858993460 m_value=-858993460 suits_lookup=[4]("Clubs","Diamonds","Hearts","Spades") ...}	Card
		hand_index	0	int
		loop	0	int
		m_player_hands	[0]()	std::vector<Hand,std::allocator<Hand> >
		number	2	int
-		this	0x00359b90 {m_player_id=0 m_cash=100 m_active_hand=0 ...}	Player * const
		m_player_id	0	int
		m_cash	100	int
		m_active_hand	0	int
		m_bets	[0]()	std::vector<int,std::allocator<int> >
		m_player_hands	[0]()	std::vector<Hand,std::allocator<Hand> >
Hopefully that information shows up correctly, anyways, I can't see any variables that should cause me to access an out of range element?