예전에 포스팅했던
에 이어서, C++ 로 재구성한 코드입니다. 입출력 파일의 형식은 예전 포스팅과 동일하게 9행 9열의 텍스트 파일입니다.
SudokuSolve라는 클래스를 도입하였으며, 이 클래스는 파일로부터 스도쿠 퍼즐 문제를 읽어들이고 퍼즐을 푸는 등의 멤버 함수들을 가지고 있습니다. main 함수에서는 객체를 선언하고 이 멤버 함수들을 실행하기만 하면 되는거죠.
퍼즐의 답을 출력하는 멤버 함수도 있는데요. 출력 파일의 포인터를 매개변수로 받고 있으며, 위에 첨부된 main 함수의 경우처럼 화면에 출력하기 위해서는 stdout (standard output) 또는 stderr (standard error) 포인터를 사용하면 됩니다. 물론 별도의 텍스트 파일을 열고 그 포인터를 넘겨주면 파일에 답이 기록되겠죠.
이 포스팅의 main 함수는 argc 및 argv 라는 인자를 받고 있으며, 이들은 입력파일의 이름을 지정하기 위해 사용되고 있는데요. 이들 명령행 인자에 대한 자세한 내용은 다음 포스팅에 소개되어 있습니다.