#include #include #include #include #include #include "card.h" #include "deck.h" #include "hand.h" using namespace std; /************************************************************ * FunctionName * * Function description * * * * * ************************************************************/ int main() { string repeat = "Y"; Deck myDeck; Hand myHand; string exchangeCards; while (repeat == "Y" || repeat == "y") { cout << endl; myHand.newHand(myDeck); myHand.print(); cout << endl; cout << "Would you like to exchange any cards? [Y / N]: "; getline(cin, exchangeCards); while (exchangeCards != "Y" && exchangeCards != "y" && exchangeCards != "X" && exchangeCards != "n") { cout << "Please enter Y or N only: "; getline(cin, exchangeCards); } if(exchangeCards = "Y" || exchangeCards = "y") { myHand.exchangeCards(myDeck); } cout << endl; myHand.print(); cout << endl; myDeck.reset(); // Resets the deck for a new game cout << "Play again? [Y / N]: "; getline(cin, repeat); while (repeat != "Y" && repeat != "y" && repeat != "N" && repeat != "n") { cout << "Please enter Y or N only: "; getline(cin, repeat); } } return 0; }   deck.h: deck.h #ifndef DECK_H #define DECK_H #include #include // srand(), rand() #include // time() #include "card.h" // Include card header file here using namespace std; class Deck { public: // class Constructor Deck(); // Reset deck to new state (completely undealt) void resetDeck(); // Print all cards in the undealt deck void printUndealtDeck(); // Print all cards in the dealt deck void printDealtDeck(); // Get size of the undealt deck const int getSizeUndealtDeck(); // Get size of the dealt deck const int getSizeDealtDeck(); // Deal a single card Card dealCard(); // Is the dealCard() here an accessor or mutator function??? private: vector m_undealtDeck; // Undealt cards vector m_dealtDeck; // Dealt cards }; #endif

Programming with Microsoft Visual Basic 2017
8th Edition
ISBN:9781337102124
Author:Diane Zak
Publisher:Diane Zak
Chapter11: Sql Server Databases
Section: Chapter Questions
Problem 12RQ
icon
Related questions
Question

I am trying to compile a poker game:

 

#include <iostream>
#include <string>
#include <fstream>
#include <iomanip>
#include <sstream>

#include "card.h"
#include "deck.h"
#include "hand.h"

using namespace std;

/************************************************************
* FunctionName *
* Function description *
* *
* *
************************************************************/
int main()
{
string repeat = "Y";
Deck myDeck;
Hand myHand;
string exchangeCards;

while (repeat == "Y" || repeat == "y")
{
cout << endl;

myHand.newHand(myDeck);
myHand.print();
cout << endl;

cout << "Would you like to exchange any cards? [Y / N]: ";
getline(cin, exchangeCards);

while (exchangeCards != "Y" && exchangeCards != "y" && exchangeCards != "X" && exchangeCards != "n")
{
cout << "Please enter Y or N only: ";
getline(cin, exchangeCards);

}

if(exchangeCards = "Y" || exchangeCards = "y")
{
myHand.exchangeCards(myDeck);
}
cout << endl;

myHand.print();

cout << endl;

myDeck.reset(); // Resets the deck for a new game

cout << "Play again? [Y / N]: ";
getline(cin, repeat);
while (repeat != "Y" && repeat != "y" && repeat != "N" && repeat != "n")
{
cout << "Please enter Y or N only: ";
getline(cin, repeat);

}

}

return 0;
}

 

deck.h:

deck.h

#ifndef DECK_H
#define DECK_H

#include <vector>
#include <cstdlib> // srand(), rand()
#include <ctime> // time()
#include "card.h" // Include card header file here
using namespace std;

class Deck
{
public:
// class Constructor
Deck();

// Reset deck to new state (completely undealt)
void resetDeck();

// Print all cards in the undealt deck
void printUndealtDeck();

// Print all cards in the dealt deck
void printDealtDeck();

// Get size of the undealt deck
const int getSizeUndealtDeck();

// Get size of the dealt deck
const int getSizeDealtDeck();

// Deal a single card
Card dealCard(); // Is the dealCard() here an accessor or mutator function???

private:
vector<Card> m_undealtDeck; // Undealt cards
vector<Card> m_dealtDeck; // Dealt cards
};

#endif

 

// card.h

#ifndef CARD_H
#define CARD_H

#include <iostream>
#include <string>
using namespace std;

// Sources: https://en.wikipedia.org/wiki/Standard_52-card_deck
// https://en.wikipedia.org/wiki/Pip_(counting)

const string pips[] = {"Ace", "Two", "Three", "Four", "Five",
"Six", "Seven", "Eight", "Nine", "Ten",
"Jack", "Queen", "King"};
const string suits[] = {"Hearts", "Spades", "Clubs", "Diamonds"};


class Card
{
public:
// Get card value
int get();

// Set card value
void set(int value);

string getPip();

string getSuit();

// Print card value
void print();

private:
int m_cardValue;
};

#endif

 

hand.h:

hand.h

#ifndef HAND_H
#define HAND_H

#include <iostream>
#include "card.h" // Include card header file here
#include "deck.h" // Include deck header file here
using namespace std;

const int NUM_CARDS_ON_HAND = 5;

class Hand
{
public:
// Put new card from deck into given location in a hand
void newCard(Deck& deck, int location);

// Get all new cards
void newHand(Deck& deck);

// Determine cards to exchange and exchange them in a hand
void exchangeCards(Deck& deck);

// Print the hand
void print();

private:
Card m_hand[NUM_CARDS_ON_HAND]; // A hand consists of 5 cards
};

#endif

How do I fix the error on line 62? I know C++ and know how to debug a program but this is a different book. I apollogize I am trying to understand it and this is the only way I'll how.

A main.cpp - Code:Blocks 20.03
X
File Edit View Search Project Build Debug Fortran wxSmith
Tools Tools+ Plugins DoxyBlocks Settings Help
/** *<
S C
| <global>
vmain) : int
Management
Start here X main.cpp x deck.cpp X
Projects
FSymbols
Files
string repeat = "Y";
Deck myDeck;
29
Workspace
30
31
Hand myHand;
32
string exchangeCards;
33
34
while (repeat == "Y" || repeat == "y")
35
36
cout << endl;
37
38
myHand.newHand (myDeck) ;
myHand.print ();
cout << endl;
39
40
41
42
cout << "Would you like to exchange any cards? [Y / N]: ";
43
getline (cin, exchangeCards);
44
45
while (exchangeCards != "y" && exchangeCards != "y" && exchangeCards != "X" && exchangeCards != "n")
46
{
47
cout << "Please enter Y or N only: ";
48
getline (cin, exchangeCards);
49
50
51
52
if (exchangeCards == "y" || exchangeCards == "y")
53
{
54
myHand.exchangeCards (myDeck) ;
55
56
cout << endl;
57
58
myHand.print ();
cout << endl;
61
62 O
myDeck.reset () ;
// Resets the deck for a new game
63
cout << "Play again? [Y / N]: ";
getline (cin, repeat);
64
65
Logs & others
2 Code:Blocks x
Q Search results X
A Cccc X
Ở Build log X
P Build messages x CppCheck/Vera++ X 2 CppCheck/Vera++ messages X Cscope X
Z DoxyBlocks X
F Fortran info x
Closed files list X
Q Thread search x
File
Line
Message
=== Build file: "no target" in "no project" (compiler: unknown)
===
C:\Users\cccc...
In function 'int main ()':
C:\Users\ccee...
62
error: 'class Deck' has no member named 'reset'; did you mean 'resetDeck'?
=== Build failed: 1 error (s), 0 warning (s) (0 minute (s), 0 second (s)) ===
C:\Users\cccccc\Documents\Assignment 2\main.cpp
C/C++
Windows (CR+LF)
WINDOWS-1252 Line 59, Col 1, Pos 1497
Insert
Read/Write default
Transcribed Image Text:A main.cpp - Code:Blocks 20.03 X File Edit View Search Project Build Debug Fortran wxSmith Tools Tools+ Plugins DoxyBlocks Settings Help /** *< S C | <global> vmain) : int Management Start here X main.cpp x deck.cpp X Projects FSymbols Files string repeat = "Y"; Deck myDeck; 29 Workspace 30 31 Hand myHand; 32 string exchangeCards; 33 34 while (repeat == "Y" || repeat == "y") 35 36 cout << endl; 37 38 myHand.newHand (myDeck) ; myHand.print (); cout << endl; 39 40 41 42 cout << "Would you like to exchange any cards? [Y / N]: "; 43 getline (cin, exchangeCards); 44 45 while (exchangeCards != "y" && exchangeCards != "y" && exchangeCards != "X" && exchangeCards != "n") 46 { 47 cout << "Please enter Y or N only: "; 48 getline (cin, exchangeCards); 49 50 51 52 if (exchangeCards == "y" || exchangeCards == "y") 53 { 54 myHand.exchangeCards (myDeck) ; 55 56 cout << endl; 57 58 myHand.print (); cout << endl; 61 62 O myDeck.reset () ; // Resets the deck for a new game 63 cout << "Play again? [Y / N]: "; getline (cin, repeat); 64 65 Logs & others 2 Code:Blocks x Q Search results X A Cccc X Ở Build log X P Build messages x CppCheck/Vera++ X 2 CppCheck/Vera++ messages X Cscope X Z DoxyBlocks X F Fortran info x Closed files list X Q Thread search x File Line Message === Build file: "no target" in "no project" (compiler: unknown) === C:\Users\cccc... In function 'int main ()': C:\Users\ccee... 62 error: 'class Deck' has no member named 'reset'; did you mean 'resetDeck'? === Build failed: 1 error (s), 0 warning (s) (0 minute (s), 0 second (s)) === C:\Users\cccccc\Documents\Assignment 2\main.cpp C/C++ Windows (CR+LF) WINDOWS-1252 Line 59, Col 1, Pos 1497 Insert Read/Write default
Expert Solution
trending now

Trending now

This is a popular solution!

steps

Step by step

Solved in 2 steps

Blurred answer
Knowledge Booster
File Input and Output Operations
Learn more about
Need a deep-dive on the concept behind this application? Look no further. Learn more about this topic, computer-science and related others by exploring similar questions and additional content below.
Similar questions
  • SEE MORE QUESTIONS
Recommended textbooks for you
Programming with Microsoft Visual Basic 2017
Programming with Microsoft Visual Basic 2017
Computer Science
ISBN:
9781337102124
Author:
Diane Zak
Publisher:
Cengage Learning