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
[66045] C++ Builder XE에서 CPort 4.1 사용하기 문의!
Kenzuro [kenzuro83] 1778 읽음    2012-01-26 10:36
인터넷 검색을 통해서 C++ Builder XE에서 CPort 4.1 컴파일 했습니다.

http://kenzuro.tistory.com/191

제 블로그에 하는 방법을 정리해서 올려놨는데요. 여기서 약간의 문제가 발생하였습니다.

TComPort를 올리고 컴파일을 해보면 EComPort 중복선언 오류가 뜹니다.

class DELPHICLASS EComPort;
class PASCALIMPLEMENTATION EComPort : public Sysutils::Exception
{
	typedef Sysutils::Exception inherited;

private:
	int FWinCode;
	int FCode;
	
public:
        //__fastcall EComPort(int ACode, int AWinCode);
	//__fastcall EComPort(int ACode);
	__property int WinCode = {read=FWinCode, write=FWinCode, nodefault};
	__property int Code = {read=FCode, write=FCode, nodefault};
public:
	/* Exception.CreateFmt */ inline __fastcall EComPort(const System::UnicodeString Msg, System::TVarRec const *Args, const int Args_Size) : Sysutils::Exception(Msg, Args, Args_Size) { }
	/* Exception.CreateRes */ inline __fastcall EComPort(int Ident)/* overload */ : Sysutils::Exception(Ident) { }
	/* Exception.CreateResFmt */ inline __fastcall EComPort(int Ident, System::TVarRec const *Args, const int Args_Size)/* overload */ : Sysutils::Exception(Ident, Args, Args_Size) { }
	/* Exception.CreateHelp */ inline __fastcall EComPort(const System::UnicodeString Msg, int AHelpContext) : Sysutils::Exception(Msg, AHelpContext) { }
	/* Exception.CreateFmtHelp */ inline __fastcall EComPort(const System::UnicodeString Msg, System::TVarRec const *Args, const int Args_Size, int AHelpContext) : Sysutils::Exception(Msg, Args, Args_Size, AHelpContext) { }
	/* Exception.CreateResHelp */inline __fastcall EComPort(int Ident, int AHelpContext)/* overload */ : Sysutils::Exception(Ident, AHelpContext) { }
	/* Exception.CreateResFmtHelp */ inline __fastcall EComPort(System::PResStringRec ResStringRec, System::TVarRec const *Args, const int Args_Size, int AHelpContext)/* overload */ : Sysutils::Exception(ResStringRec, Args, Args_Size, AHelpContext) { }
	/* Exception.Destroy */ inline __fastcall virtual ~EComPort(void) { }
	
};


CPort.hpp를 보면 위와 같이 선언되어 있는데요
//__fastcall EComPort(int ACode, int AWinCode);
//__fastcall EComPort(int ACode);

두가지를 주석처리하면 정상적으로 컴파일이 됩니다. inline 함수 선언과 충돌이 일어나는 것 같은데요. 궁금한건 이것을 주석으로 처리해도 되는지 입니다. 지금 컴파일이 잘 되더라도 코딩하다가 문제가 생기면 난감할 것 같아서 문의 드립니다. 꼭좀 도와주세요 ㅜ.ㅜ

+ -

관련 글 리스트
66045 C++ Builder XE에서 CPort 4.1 사용하기 문의! Kenzuro 1778 2012/01/26
66049     Re:C++ Builder XE에서 CPort 4.1 사용하기 문의! 빌더 1814 2012/01/26
66051         Re:Re:C++ Builder XE에서 CPort 4.1 사용하기 문의! Kenzuro 1790 2012/01/26
66055             Re:Re:Re:C++ Builder XE에서 CPort 4.1 사용하기 문의! 빌더 1958 2012/01/26
66066                 Re:Re:Re:Re:C++ Builder XE에서 CPort 4.1 사용하기 문의! Kenzuro 3480 2012/01/27
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.