@@ -22,28 +22,23 @@ board_pos * get_board_pos_by_input(int & index) {
2222}
2323
2424void relative_board_cell (std::string & output, char & placeholder, const bool & left_corner, const bool & right_corner) {
25- if (left_corner) output. append ( " " ) ;
26- if (!left_corner && !right_corner) output. append ( 1 , BOARD_DIV) ;
25+ if (left_corner) output += " " ;
26+ if (!left_corner && !right_corner) output += BOARD_DIV;
2727
28- output. append ( " " ) ;
28+ output += " " ;
2929
30- if (placeholder == PLAYER_X || placeholder == PLAYER_O) output. append ( 1 , placeholder) ;
31- else output. append ( std::to_string ((int )placeholder) );
30+ if (placeholder == PLAYER_X || placeholder == PLAYER_O) output += placeholder;
31+ else output += std::to_string ((int )placeholder);
3232
33- output. append ( " " ) ;
33+ output += " " ;
3434
35- if (right_corner) output. append ( " \n " ) ;
36- if (!left_corner && !right_corner) output. append ( 1 , BOARD_DIV) ;
35+ if (right_corner) output += " \n " ;
36+ if (!left_corner && !right_corner) output += BOARD_DIV;
3737}
3838
3939void board_row_separator (std::string & output) {
40- output.append (" " );
41- output.append (3 , BOARD_LINE);
42- output.append (1 , BOARD_INTERSECTION);
43- output.append (3 , BOARD_LINE);
44- output.append (1 , BOARD_INTERSECTION);
45- output.append (3 , BOARD_LINE);
46- output.append (" \n " );
40+ output += " " , output.append (3 , BOARD_LINE), output += BOARD_INTERSECTION, output.append (3 , BOARD_LINE),
41+ output += BOARD_INTERSECTION, output.append (3 , BOARD_LINE), output += " \n " ;
4742}
4843
4944void relative_board_fmt (std::string & output, char (&placeholders)[3], const bool & is_mid_row) {
@@ -94,8 +89,8 @@ void board_check_player(char(&board_inputs)[3][3], char & winner, const char * &
9489 return ;
9590 }
9691 if (board_check_horizontal (board_inputs, 1 , player)) {
97- condition_fmt. append ( MIDDLE) ;
98- condition_fmt. append ( " row" ) ;
92+ condition_fmt += MIDDLE;
93+ condition_fmt += " row" ;
9994 condition = condition_fmt.c_str ();
10095 winner = player;
10196 return ;
@@ -111,8 +106,8 @@ void board_check_player(char(&board_inputs)[3][3], char & winner, const char * &
111106 return ;
112107 }
113108 if (board_check_vertical (board_inputs, 1 , player)) {
114- condition_fmt. append ( MIDDLE) ;
115- condition_fmt. append ( " column" ) ;
109+ condition_fmt += MIDDLE;
110+ condition_fmt += " column" ;
116111 condition = condition_fmt.c_str ();
117112 winner = player;
118113 return ;
@@ -149,8 +144,7 @@ int main(void)
149144
150145 while (true ) {
151146 output.clear ();
152-
153- output.append (" Current board state:\n " );
147+ output += " Current board state:\n " ;
154148
155149 if (op != 0 && op != -1 ) {
156150 index = op - 1 ;
@@ -167,36 +161,26 @@ int main(void)
167161
168162 board_draw (output, board_inputs);
169163
170- if (op == 0 ) output. append ( " \n Not a valid choice. Try again.\n " ) ;
164+ if (op == 0 ) output += " \n Not a valid choice. Try again.\n " ;
171165 if (is_occupied) {
172166 is_occupied = false ;
173- output. append ( " \n That square is not available. Try again.\n " ) ;
167+ output += " \n That square is not available. Try again.\n " ;
174168 }
175169
176170 board_checks (board_inputs, winner, condition, condition_fmt);
177171
178172 if (winner != ' ' || attempts == MAX_ATTEMPTS) break ;
179173
180- output.append (" \n Player " );
181- output.append (1 , current_player);
182- output.append (" , enter a number between 1 and 9: " );
183-
174+ output += " \n Player " , output += current_player, output += " , enter a number between 1 and 9: " ;
184175 std::cout << output << std::flush;
185-
186176 std::cin >> op;
187177 std::system (CLS);
188178
189179 if (op < 1 || op > 9 ) op = 0 ;
190180 }
191181
192- if (winner != ' ' ) {
193- output.append (" \n Player " );
194- output.append (1 , winner);
195- output.append (" wins on the " );
196- output.append (condition);
197- output.append (" !" );
198- }
199- else output.append (" \n Draw. Nobody wins." );
182+ if (winner != ' ' ) output += " \n Player " , output += winner, output += " wins on the " , output += condition, output += " !" ;
183+ else output += " \n Draw. Nobody wins." ;
200184
201185 std::cout << output << std::endl << std::endl;
202186 return EXIT_SUCCESS;
0 commit comments