The Operation enum defined in the header file contains a value named DELETE, which conflicts with the DELETE macro defined in the windows.h header file. This conflict causes compilation errors when both the enum and windows.h are included in the same translation unit.
enum Operation { DELETE, INSERT, EQUAL };