我用C++编程的时候需要对函数进行重载,使函数拥有不同的参数类型,分别是父类类型和子类类型,这样用重载会不会有问题?
人生最曼妙的风景,竟是内心的淡定与从容!
예, 예를 들어 이 코드입니다.
출력은
예, C 오버로드는 소스 파일을 대상 파일로 컴파일할 때 함수 이름을 바꾸면 달성됩니다. 컴파일러는 함수를 호출할 때 전달된 매개변수에 따라 호출을 결정합니다. 이는 C 의 정적 다형성이라고 불리는 컴파일 단계에서 완료됩니다.
C 에도 override가 있는데, 이는 런타임 클래스의 가상 테이블을 통해 구현되는 가상 함수, 상속, 포인터 메커니즘을 통해 동적 다형성을 구현하는 것입니다.
상관없습니다. @伊仙 님의 답변과 같습니다. , 그러나 매개변수가 각각 상위 유형과 하위 유형의 포인터인 경우에는 작동하지 않습니다(참조는 괜찮습니다).
예, 예를 들어 이 코드입니다.
으아악출력은
으아악예, C 오버로드는 소스 파일을 대상 파일로 컴파일할 때 함수 이름을 바꾸면 달성됩니다. 컴파일러는 함수를 호출할 때 전달된 매개변수에 따라 호출을 결정합니다. 이는 C 의 정적 다형성이라고 불리는 컴파일 단계에서 완료됩니다.
C 에도 override가 있는데, 이는 런타임 클래스의 가상 테이블을 통해 구현되는 가상 함수, 상속, 포인터 메커니즘을 통해 동적 다형성을 구현하는 것입니다.
상관없습니다. @伊仙 님의 답변과 같습니다. ,
그러나 매개변수가 각각 상위 유형과 하위 유형의 포인터인 경우에는 작동하지 않습니다(참조는 괜찮습니다).