-3
코드는 표준으로 생성자를 만들 수 없습니다 : 클래스 여기에 멤버
#include "card.h"
#include <array>
constexpr int DECK_SIZE = 52;
class Deck {
std::array<Card, DECK_SIZE> m_deck;
public:
Deck();
~Deck() = default;
Card getCard(int index) { return m_deck[index]; }
};
로 배열
#include "deck.h"
Deck::Deck() {
}
나는 기능
삭제 참조하는 오류 '표준 : : 배열 : 배열 (무효)를'가지고 일을 시작할 때, 비록 내가 그나마 삭제 기능
정말 지금은 단지 객체를 생성하고이 배열에 할당 할 배열의 크기는 컴파일 타임에 알려져, 이해, 나는 왜 이렇게 기운 다?
그냥 ..이 카드는이 경우 actaully 관련성을 실현, 어쨌든 여기 std::array<Card, DECK_SIZE>
, Card
은 기본적으로 작도해야합니다 기본-구축하기 위해 코드
#include <SFML/Graphics.hpp>
constexpr auto FILE_PATH = "res\\cards\\";
class Card {
char m_rank;
char m_suit;
int m_value;
sf::RectangleShape m_shape;
sf::Texture m_texture;
public:
Card(char, char, int, std::string);
~Card() = default;
char getRank() { return m_rank; }
char getSuit() { return m_suit; }
int getValue() { return m_value; }
void setValue(int p_value) { m_value = p_value; }
sf::Texture getTexture() { return m_texture; }
sf::RectangleShape getShape() { return m_shape; }
void setPosition(float p_x, float p_y) { m_shape.setPosition(p_x, p_y); }
};
Card::Card(char p_rank, char p_suit, int p_value, std::string p_texture_file_name)
:m_rank(p_rank), m_suit(p_suit), m_value(p_value) {
m_texture.loadFromFile(FILE_PATH + p_texture_file_name);
m_shape.setSize((sf::Vector2f(70, 90)));
m_shape.setTexture(&m_texture);
}
[MCVE]를 게시하십시오. –