Есть ли смысл определять новые ключевые слова в c++?
Скорее всего будет сбивать с толку. 
Ваш интерфейс ни разу не интерфейс - дефайном вы никак не запретите добавить в него реализацию.
Вообще такие дефайны опасны - а что если у меня имя переменной будет abstract?
Ну auto на dynamic вообще бесмысленно - калька с другого ЯП? А зачем? Букв больше, автоподстановка и ништряки IDE могут неадекватно переварить такое.
1. #define в плюсах - это зло
2. для плюсовиков ваш код будет не читаем
3. лучше привыкнуть к стандартным обозначениям плюсов