Это плохо. Я бы этим не воспользовался.
Условно: все определения в C / C ++ обычно пишутся заглавными буквами, чтобы всем читателям было ясно, что это определение, и чтобы избежать конфликтов имен с именами функций или переменных.
Практически: это очень распространенное название "интерфейс", и его использование будет опасно только на этом основании. Но, конечно, вы могли бы сделать имя более четким, например, MY_PLATFORM_INTERFACE или что-то в этом роде.
Философски: Это явно неудачная попытка превратить C ++ в более чистый язык ООП, такой как Java или C #, и попытаться каким-то образом сделать синтаксис C ++ более знакомым новичкам из мира Java / C #. Язык программирования это то, что он есть. Если вы хотите внести глубокие изменения, обратитесь в стандартный комитет и будьте готовы предоставить убедительные доказательства. Я думаю, что такое небольшое изменение в синтаксисе смешно. Я не думаю, что кто-то не сможет переключиться на C ++, потому что он не может привыкнуть к мысли, что ключевое слово интерфейса не существует в C ++.
Идиоматически: когда вы программируете на C ++, вы должны ожидать, что программисты на C ++ будут просматривать или просматривать ваш код. Если вы представите такую вещь, которая может выглядеть как неясное специфичное для компилятора расширение C ++, вы можете отбросить настоящего программиста на C ++, и он может потратить свое драгоценное время на размышления о том, какой компилятор или расширение используется для включения этого ключевого слова «interface». Придерживайтесь идиоматического синтаксиса C ++, когда это возможно. В противном случае, вам придется комментировать, рядом с каждым использованием «интерфейса», что это ключевое слово является просто определением для «класса», и в этом случае вы можете просто прокомментировать объявление класса, что этот класс является интерфейсом и просто используйте ключевое слово "class", как обычно.