C++에서 이것이 오류 인 이유를 알고 있습니다.클래스에서 선언 한 정적 변수
class A
{
A b;
};
int main() {}
type of b is unresolved at the compile time
입니다. 그럼 왜 아래 코드가 맞습니까?
class A
{
static A b;
}
int main() {}
정적 인 경우 변수 b의 유형이 해석됩니까 ?? 다음 코드는 자바를 위해 일하는 놀랍게도
그리고 마지막으로는 :
public class Main
{
Main g;
public static void main(String[] args)
{
System.out.println("hi");
}
}
왜 그렇게입니까? 정적 변수는 인스턴스가 아닌 클래스에만 해당된다는 것을 알고 있습니다. 그러나 그것은 위의 질문에 대한 대답을주지 못합니다. 제게 약간의 빛을 던져주세요.
** 여기서 좋은 질문을하기 전에 * C++ 프로그래밍 책을 읽으십시오 .... 우리는 몇 분 안에 C++을 배울 수 없으며 배우려면 많은 시간이 필요하며 실험을해야합니다. 컴파일러에서 모든 경고를 활성화하십시오. –
Java의 변수는이 경우 C의 포인터와 비슷합니다. – Elazar
FYI :'static'은 타입 분해와는 전혀 관련이 없습니다. –