int & b = a; для gcc vs g++
-1 okwoei [2012-08-13 16:03:00]
Я понял, что gcc и g++ обрабатывают по-разному следующие коды:
#include <stdio.h>
int main(void)
{
int a = 0;
int& b = a;
return 0;
}
gcc возвращает "parse error before &", в то время как g++ не возвращается.
Я когда-то встречал интервью, упомянутое C и C++, компиляторы обрабатывают по-разному для int & b.
gcc
1 ответ
2 Michael Madsen [2012-08-13 16:07:00]
Это потому, что &
не имеет смысла в объявлении типа C - в C++, это означает, что переменная будет ссылкой, но те не существуют в C.
Другими словами, int& b = a;
просто недействителен C-код.