Следующий фрагмент кода компилируется и выполняется нормально.
Что именно означает выражение extern int a
после static int a
.
Обратите внимание, что если я напишу static int a
после extern int a
, компилятор выдаст ошибку как tests.cpp:6: error: a was declared extern and later static
#include<iostream>
//#include "testh.h"
using namespace std;
static int a;
extern int a;
int main()
{
int a;
a=3;
cout<<a<<endl;
cout<<::a<<endl;
return 0;
}