2010-05-20 6 views
2

2 개의 모듈이 있습니다. 각각에는 동일한 이름의 Sub가 있습니다. 아래를 참조하십시오 :다른 모듈의 같은 이름의 메소드가 모호함을 초래합니다.

그러나 컴파일러는 moduleA와 moduleB 사이에 모호성이 있다고 불평합니다.

어떻게 될 수 있습니까? 나는 완전히 다른 서명을했다.

그러나 두 모듈을 동일한 모듈에 넣으면 전혀 모호하지 않습니다.

누군가 내게 이유를 말해 줄 수 있습니까?

감사합니다.

+0

두 모듈을 같은 모듈에 두지 않는 이유는 무엇입니까? 나는 두 모듈이 다른 용도로 사용되기 때문에 생각합니다. 문제가 너무 커서 moduleB.f (...)와 같은 호출을 할 수 없습니까? 나중에 자신의 코드를 볼 수있는 모든 사람 (자신을 포함하여)이 이해하기 쉽습니다. –

답변

0

모호성을 막으려면 메소드 호출을 완전히 한정해야합니다. 예 : moduleA.f().

+0

답장을 보내 주셔서 감사합니다. 그렇다면 컴파일러가 왜 서명으로 구별 할 수 없습니까? 어떤 종류의 과부하? – smwikipedia

+0

@smwikipedia : 컴파일러 경고 메시지는 무엇입니까? –

+0

@Ardman, 'f'는 모듈 'TestProject.moduleA'및 'TestProject.moduleB'의 선언 사이에 모호합니다. – smwikipedia

관련 문제