여기 제가 직면 한 문제가 있습니다. 해결책이 있습니까?기본 클래스의 참조를 다른 함수로 전달
Class A: public class B
{
// I want to pass a reference of B to Function
}
void ClassC::Function(class& B)
{
//do stuff
}
여기 제가 직면 한 문제가 있습니다. 해결책이 있습니까?기본 클래스의 참조를 다른 함수로 전달
Class A: public class B
{
// I want to pass a reference of B to Function
}
void ClassC::Function(class& B)
{
//do stuff
}
방법은 클래스를 선언하는 잘못이다 :
class A : public B // no more class keyword here
{
}; // note the semicolon
void ClassC::Function(const B &b) // this is how you declare a parameter of type B&
{
}
당신은 단순히 Function
에 유형 A
의 개체를 전달해야합니다. 작동 할거야. 파생 된 형식을 원한다면 매개 변수를 const
으로 선언하는 것이 좋습니다. 매개 변수로이 *로) (
classCObject.Function(*this);
구문에 문제가 있습니까? 그것은
void ClassC::Function(B& b)
{
b.DoSomething();
}
이 b
유형 B
의 참조를 만들 수 있어야합니다.
나는이 문제를 해결하기 위해 포인터를이 함수에 전달하고있다. – user233320
가난하게 표현을하지만, 행간 읽기, 호출 기능을 시도해보십시오 가
this
인스턴스를 전달하려면, 당신은 단순히 전화 것입니다. –