C++Builder Programming Forum
C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
C++빌더 포럼
Q & A
FAQ
팁&트릭
강좌/문서
자료실
컴포넌트/라이브러리
메신저 프로젝트
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
볼랜드포럼 광고 모집

C++빌더 Q&A
C++Builder Programming Q&A
[45054] Re:컴파일시 Ambiguity error가 발생하는데 어떻게 수정해야되나요?
둘리 [dooly386] 1146 읽음    2006-05-25 19:36
Ambiguity 에러는 흔히 다음과 같이 namespace 의 혼란에서 발생 합니다.
가령
namespace n1
{
  int a;
}
namespace n2
{
int a;
}
이렇게 namespace 가 n1과 n2 가 있고 같은 a라는 이름의 변수가 있다고 하면

using namespace n1;
using namespace n2;
이렇게 namespace사용선언이 중첩 되어질경우

a = 20;
이렇게 사용하면 결국 a라는 변수가 n1 에 있는것인지 n2 에 있는것인지를 컴파일러가 구분을 못하기 때문에
나오는 에러 입니다.

이런경우 using namespace 부분을 중첩이 않되도록 하든지 아니면
호출시 n1::a=20; 또는 n2::a=30; 이런식으로 해당 namespace를 열거해주시면 됩니다.

아마도 ftime은 c++ 의 기본 함수로 std namespace에 존재합니다.
ftime(timeb *) 라는 함수를 직접 다시 작성 하셨는데 해당 해당 함수가 특정한 namespace에 들어 있지 않거나
아니면 두개의 namespace가 using 선언에 의하여 중첩 되어서 나타나는 현상인듯 합니다.

namespace를 정리하셔서 처리하시면 될듯 하군요..
수고하세요.


오전&오후 님이 쓰신 글 :
: 간단하게 빌더에서 폼한개 생성하고
: 업체에서 받은 헤더파일과 소스파일을 포함시키고 컴파일해보면
: 밑에처럼 에러가 나오는데 어떻게 처리해야되나요?
: [C++ Error] stdsoap2.cpp(8302): E2015 Ambiguity between 'ftime(timeb *)' and 'std::ftime'
: 에러내용을 보면 ftime(timeb *)이 std::ftime하고 모호성 에러가 나는거 같은데
: 어떻게 처리해야되나요?

+ -

관련 글 리스트
45052 컴파일시 Ambiguity error가 발생하는데 어떻게 수정해야되나요? 오전&오후 828 2006/05/25
45054     Re:컴파일시 Ambiguity error가 발생하는데 어떻게 수정해야되나요? 둘리 1146 2006/05/25
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.