Почему g ++ жалуется? - PullRequest
       6

Почему g ++ жалуется?

0 голосов
/ 10 ноября 2018

Может кто-нибудь объяснить это явление?

#include <iostream>
int main() {}

И скомпилируйте, gaves:

g++ main.cpp -Dn=1
<command-line>:0:3: error: expected unqualified-id before numeric constant

А вот и полное видео . Я хочу знать полный список этих резервных штучек, и каковы они. Моя среда cygwin:

g++ --version
g++ (GCC) 7.3.0
Copyright (C) 2017 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

1 Ответ

0 голосов
/ 10 ноября 2018

-Dn=1 определяет n как макрос до включения iostream, что означает, что он переопределяет каждое вхождение n в iostream как 1, что ломает много вещей.

Чтобы исправить это, выберите другое имя макроса или переместите #define внутрь файла после включения.

...