홈>
먼저 부모 클래스의 객체를 만들고 싶습니다. 조건에 따라 자식 클래스의 자식 객체를 만들어서 부모 객체에 넣습니다. 이제 객체를 일부 함수에 전달한 후 해당 함수는 하위 클래스 메소드에 액세스해야합니다. 설명 코드를 참조하십시오.
class Parent {
virtual f(){
print('Parent');
}
}
class Child: public Parent{
virtual f(){
print('Child')
}
}
void do_something(Parent &obj){
obj.f(); // this will print Child
}
int main(){
Parent obj;
if(cond){
// This is my actual question
// Not sure how to create a child obj here and put it into parent obj
Child obj = dynamic_cast<Child>(obj);
}
do_something(obj) // pass the child obj
}
-
답변 # 1
관련 자료
- javascript - 개체에 개체 만들기
- javascript - 배열에서 객체를 추출하여 다른 배열 만들기
- Javascript에서 특수 배열 문자열로 객체를 만들 수 있습니까?
- c# - 단순 유형을 포함하는 임시 객체를 만드는 방법
- javascript - 문자열 배열에서 객체 배열 생성
- java - JVM이 해당 클래스의 이름이있는 경우 해당 클래스에서 주 메서드에 액세스하기 위해 주 메서드를 포함하는 클래스의 개체를 만들 수없는 이유는 무엇입니까?
- python - 런타임에 하드웨어를 쿼리하고`__init__` 내에 속성/속성 및 setter를 동적으로 생성합니다
- VBA Word normaldotm에서 클래스 모듈 개체 만들기
- javascript - 동일한 객체로 배열 값에 새 배열을 어떻게 만들 수 있습니까?
- javascript - 시간, 분, 날짜, 월 및 연도로 구성된 문자열에서 날짜 개체를 만드는 방법은 무엇입니까?
- c# - 'AppDbContext'유형의 개체를 만들 수 없습니다
- Zoom에서 제공하는 UCT 날짜 및 시간대에서 Java로 Date 객체를 만들어야합니다 서버의 시간대는 요소가 아니어야합니다
- python - 목록의 요소를 사용하여 클래스에 대한 개체를 만드는 방법
- python - AttributeError"SQLAlchemy"개체에 'create'속성이 없습니다
- groovy - 객체를 재귀적이고 쉽게 생성
- reactjs - 자바 스크립트 객체 내부에 동적으로 객체 생성
- python - 별도의 시간별 datetime 열이 지정된 시간 범위 사이에있는 경우 새 개체 열 값을 만듭니다
- class - __add__ 메서드를 올바르게 덮어 쓰고 Python에서 새 개체를 만드는 방법은 무엇입니까?
- 기존 개체 목록에서 새 개체 목록을 만드는 방법은 무엇입니까?
- angular - Typescript는 객체에서 배열을 만듭니다
관련 질문
- C++ - c ++ - 이 다이아몬드 상속 구조가 모호성을 유발하지 않는 이유는 무엇입니까?
- c++ - 하위 클래스의 기본 클래스에서 생성자에 추가
- inheritance - C ++ | 파생 클래스는 자체 개인 멤버가 아닌 기본 클래스의 개인 멤버에 액세스합니다
- C ++ 기하학 계층, 클래스 업 캐스팅 및 상속
- c++ - 슈퍼 클래스 멤버 포인터는 서브 클래스에서 액세스 할 때 null이됩니다
- c++ - 컴파일러가 올바른 함수 오버로드를 찾지 못함
- c++ - unittest를 위해 상속 된 클래스의 private 멤버 호출
- c++ - CRTP를 사용하는 컬러 모델 클래스
<올>
개체 대신 포인터를 사용하십시오.
와이즈 비즈 변경 객체가 아닌 참조를 사용합니다. 인수가 객체의 값으로 전달되면 프로그램에서 objct-slicing 문제가 발생합니다.
와이즈 비즈 변경
void do_something(Parent& obj){ .... }
에 전화 전달 된 객체에서.f()