E D R , A S I H C RSS

BackLinks search for "ViewAcct"

BackLinks of ViewAcct


Search BackLinks only
Display context of search results
Case-sensitive searching
  • 가상함수
         bretta.ViewAcct (); // BacnkAccount::ViewAcct ()를 사용
         ophelia.ViewAcct (); // Oberdraft::ViewAcct ()를 사용
         bp->ViewAcct (); // BackAccount::ViewAcct ()를 사용
         bp->ViewAcct (); // 헉! 어느 버전을 사용하지?
         여기서 컴파일러가 포인터형을 사용한다면 마지막 명령문은 BackAccount::ViewAcct ()를 호출하겠지만 포인터가 지시하는 객체의 데이터 형을 사용한다면Overdraft::ViewAcct ()를 호출할 것이다. 그렇다면 컴파일러는 어떤 선택을 할것인가? [[BR]]
         기본적으로 C++는 포인터나 참조의 데이터형을 사용하여 사용할 함수를 결정하고 지시되거나 참조된 대상 객체의 데이터형을 무시한다. 그러므로 앞의 예에서 프로그램은 BackAccount::ViewAcct ()를 사용할 것이다. 이렇게 하는 이유는 분명하다. 컴파일러가 데이터형을 모르는 경우가 많기 때문이다. 예를 들어..
         bp->ViewAcct ();
         bp->ViewAcct (); // BackAccount::ViewAcct ()를 사용
         Overdraft 객체에 BackAccount::ViewAcct ()를 사용해도 문제될 것은 없고 다만 일부 테이터가 출력되지 않을 뿐이다. 그렇다면 bp->ViewAcct ()를 포인터형 객체형에 결합하여 Overdraft::ViewAcct ()를 호출할 수 있으면 좋을 것이다. C++는 이 목표를 달성하기 위해 late binding 또는 dynamic binding이라는 것을 제공한다. 이 것에서는 컴파일러가 사용할 클래스 메서드를 결정하지 않고 프로그램 실행 시간에 메서드 함수 호출을 실제로 수행할 때마다 사용할 클래스 메서드를 결정하게 한다. 이 것을 사용하면 참조나 포인터가 지시하는 객체의 형에 따라 메서드를 선택할 수 있다.[[BR]]
         bp->ViewAcct (); // BackAccount::ViewAcct ()를 사용
         bp->ViewAcct (); // Overdraft::ViewAcct ()를 사용
Found 1 matching page out of 7540 total pages

You can also click here to search title.

Valid XHTML 1.0! Valid CSS! powered by MoniWiki
Processing time 0.0098 sec