This is a cross-platform command-line chess game written in object-orientated modern C++ using only the Standard Library. It aims to demonstrate the implementation of advanced C++ code features. Users are free to study, modify, and redistribute the source code as per the software licence.
To compile and execute using GCC and G++, run the following.
cd ../src
g++ [TODO: add compilation]
./../bin/main.out
- Move validation
- Check and checkmate
- Castling
- En passant
- Save and load games
- AI opponent
- Custom starting conditions
- Source code organization (headers, class files, namespaces)
- Dynamic memory allocation (and garbage collection)
- Smart pointers
- Exception handling - Use of the Standard Library (for example, use of container classes)
- Lambda expressions (anonymous functions)
Note: files are referred to as columns (cols) in the code to avoid confusion with the file system.
- Move semantics
- Templates
- Substantial input/output interface, namely reading and writing to storage
This project is distributed under the GNU GPL version 3.
© 2023 Tom Kuson