/cpp-membot

A ChatBot written in C++ where users can ask questions about some aspects of memory management.

Primary LanguageC++

Memory Management Chatbot

The ChatBot code creates a dialogue where users can ask questions about some aspects of memory management in C++. After the knowledge base of the chatbot has been loaded from a text file, a knowledge graph representation is created in computer memory, where chatbot answers represent the graph nodes and user queries represent the graph edges. After a user query has been sent to the chatbot, the Levenshtein distance is used to identify the most probable answer.

This project implements a more efficient memory management model using smart pointers, move semantics and exclusive ownership of objects based on this starter code, and in accordance with this rubric.

Dependencies for Running Locally

Basic Build Instructions

  1. Clone this repo.
  2. Make a build directory in the top level directory: mkdir build && cd build
  3. Compile: cmake .. && make
  4. Run it: ./membot.

Code schematics

Gui setup

Class structure

Chatbot motion

The chatbot is moving from node to node depending on user questions and keywords that are sotred within the graph edges.