correct
This commit is contained in:
		@@ -71,7 +71,7 @@ Game::Game() {
 | 
			
		||||
    std::shuffle(all_words.begin(), all_words.end(), rng);
 | 
			
		||||
    word = all_words.back();
 | 
			
		||||
    all_words.pop_back();
 | 
			
		||||
    guess_corrector = GuessCorrector(word);
 | 
			
		||||
    guess_corrector = std::make_unique<GuessCorrector>(word);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
void Game::handle_key(SDL_Keycode event) {
 | 
			
		||||
 
 | 
			
		||||
@@ -11,7 +11,7 @@ const SDL_Point SCREEN_SIZE{800, 800};
 | 
			
		||||
class Game {
 | 
			
		||||
private:
 | 
			
		||||
    std::vector<const char *> all_words;
 | 
			
		||||
    GuessCorrector guess_corrector;
 | 
			
		||||
    std::unique_ptr<GuessCorrector> guess_corrector;
 | 
			
		||||
    const char *word;
 | 
			
		||||
 | 
			
		||||
public:
 | 
			
		||||
 
 | 
			
		||||
@@ -4,8 +4,8 @@
 | 
			
		||||
GuessCorrector::GuessCorrector(const char *word)
 | 
			
		||||
        : m_word(word),
 | 
			
		||||
          m_word_length(strlen(word)),
 | 
			
		||||
          m_parts_guessed(std::make_unique<std::optional<char>[]>(m_word_length)) {
 | 
			
		||||
    for (size_t i = 0; i < m_word_length; i++) {
 | 
			
		||||
          m_parts_guessed(std::make_shared<std::optional<char>[]>(m_word_length)) {
 | 
			
		||||
    for (std::ptrdiff_t i = 0; i < m_word_length; i++) {
 | 
			
		||||
        m_parts_guessed[i] = std::nullopt;
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
@@ -37,7 +37,7 @@ bool GuessCorrector::is_filled_out() const {
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
std::weak_ptr<std::optional<char>[]> GuessCorrector::guessed() const {
 | 
			
		||||
    m_parts_guessed;
 | 
			
		||||
    return m_parts_guessed;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -6,13 +6,11 @@
 | 
			
		||||
class GuessCorrector {
 | 
			
		||||
    const char *m_word;
 | 
			
		||||
    size_t m_word_length;
 | 
			
		||||
    std::unique_ptr<std::optional<char>[]> m_parts_guessed;
 | 
			
		||||
    std::shared_ptr<std::optional<char>[]> m_parts_guessed;
 | 
			
		||||
 | 
			
		||||
public:
 | 
			
		||||
    GuessCorrector(const char *word);
 | 
			
		||||
 | 
			
		||||
    GuessCorrector() = default;
 | 
			
		||||
 | 
			
		||||
    [[nodiscard]] bool has_char(char to_check) const;
 | 
			
		||||
 | 
			
		||||
    void add(char to_add);
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user