說明是:C++卡片洗牌器錯誤
創建一個程序來洗牌和處理一副牌。該計劃應包括班級卡,班級DeckOfCards和一個驅動程序。
類卡應提供: a)數據成員面對和int類型的套裝。 b)一個構造函數,它接收兩個表示臉和套裝的int,並使用它們初始化數據成員。
Class DeckOfCards應該包含: a)兩個名爲deck的卡對象存儲兩張卡片。 b)一個不帶參數的構造函數,並初始化卡片組中的兩張卡片。 你可以給這兩張牌隨機面值和套裝值,但要確保它們不一樣。 c)打印兩張卡片的printCards功能。
驅動程序應創建一個DeckOfCards對象,並打印此對象所具有的卡片。
你必須在這個項目中的5個文件:card.hpp,card.cpp,deckofcards.hpp,deckofcards.cpp,main.cpp中
我得到的錯誤是:
- DeckOfCards.h行中缺少顯式類型(假定爲'int')15
-
「
- 沒有合適的構造函數存在將main.cpp行8
- 缺少類型說明在DeckOfCards.h線-int假定15
- '初始化:不能從轉換「DeckOfCards *」到「DeckOfCards」中的main.cpp第8行
- 缺少類型specifier-假定爲int在DeckOfCards.h線15
- 缺少類型specifier-假定爲int在DeckOfCards.cpp線18
Card.h:
#ifndef Card_H
#define Card_H
#include <string>
using namespace std;
string suits[4] = { "Hearts", "Diamonds", "Spades", "Clubs" };
string faces[12] = { "Ace", "2", "3", "4", "5", "6", "7", "8", "9", "Jack", "Queen", "King" };
class Card {
public:
int face;
int suit;
Card(int face, int suit);
string toString();
};
#endif
Card.cpp:
#include "Card.h"
#include <iostream>
using namespace std;
Card::Card(int face, int suit) {
this->face = face;
this->suit = suit;
}
string Card::toString() {
string suitname = suits[suit];
string facename = faces[face];
return facename + " of " + suitname;
}
DeckOfCards.h:
#ifndef DeckOfCards_H
#define DeckOfCards_H
#include "Card.h"
#include <vector>
using namespace std;
class DeckOfCards {
public:
vector<Card> deck;
public:
DeckOfCards();
printCards();
};
#endif
DeckOfCards.cpp:
#include "DeckofCards.h"
#include "Card.h"
#include <iostream>
using std::cin;
using std::cout;
using std::string;
DeckOfCards::DeckOfCards() {
for (int i = 0; i<2; i++) {
Card card(i + 3, i + 5);
deck.push_back(card);
}
}
DeckOfCards::printCards() {
for (int i = 0; i<2; i++) {
cout << deck[i].toString();
}
}
爲主。CPP:
#include <iostream>
#include "Card.h"
#include "DeckOfCards.h"
using namespace std;
int main() {
DeckOfCards cardDeck = new DeckOfCards();
cardDeck.printCards();
return 0;
}
什麼的訴確切的一部分ery清除「Card.hpp中的未知類型名稱'字符串'」您不明白的錯誤消息? –
爲什麼你的套牌只有48張牌? –
[Unknown type name string C++]可能的重複(http://stackoverflow.com/questions/29692326/unknown-type-name-string-c) –