C++로 작성된 일부 시뮬레이션 소프트웨어를 디버깅하고 있으며 코드의 일부를 이해하는 데 문제가 있습니다.클래스의 인스턴스에 C++ 전달 매개 변수
소프트웨어는 3D 세계에서 움직이는 일부 엔티티를 시뮬레이션하며, 동작은 A에서 B로 직선으로 이동하거나 특정 점을 중심으로 나선형으로 이동하거나 사전 정의 된 경로를 따라 설정할 수 있습니다.
엔티티가 시뮬레이션에서 이동함에 따라 현재 속도, 방향 (방향), 현재 대상까지의 거리, 현재 대상에 도달하는 데 걸리는 시간 등 이동에 대한 일부 정보가 사용자에게 표시됩니다 & 해당 위치에 ETA가 있습니다.
현재 진행중인 버그는 여행의 ETA 및 '현재 구간을 완료 할 시간'이 올바르지 않습니다. v 사용자에게 알립니다.
나는 사용자에게이 정보를 표시하는 C++ 소스 파일에 다음 코드를 가로 질러 온 : 그래서 fpETA
해당 클래스의 인스턴스는 ...,
DateTimeAndZone fpETA(mCurrentTime);
SystemTimeTypes::addRelativeTimeToSystemTime(fpETA, flightPlanETA);
DateTimeAndZone
이 클래스를 내가 이해가 안되면 DateTimeAndZone
인 mCurrentTime
이 매개 변수가 함수에 전달되는 것과 같은 것으로 보이는 클래스 인스턴스의 매개 변수로 전달할 수 있습니다.
DateTimeAndZone
클래스의 정의를 살펴보면 을 반환하는 문장의 끝에 return
문이 있습니다.
새로운 클래스를 만드는 매개 변수로 클래스를 전달하는 방법을 설명 할 수 있습니까? 이것의 함의는 무엇입니까? 새로운 클래스가 기존 클래스에 저장된 정보를 사용한다는 의미입니까? 아니면 제가 여기에 빠진 것이 있습니까?
내가 SO에이 질문에 건너 온,하지만 정말 내 질문에 ... 대답하지 않습니다 Passing a class object as an argument in C++
'mCurrentTime (이는 또한 DateTimeAndZone 임)'. 그는 그것이 'DateTimeAndZone'유형의 객체라는 사실을 분명히 밝혔습니다. – abcthomas