3 차원 좌표가 포함 된 라이브러리를 만들고 3 차원 각도의 구성 요소 이름에 yaw-pitch-roll과 heading- 두 이름 체계 사이의 표기법과 동등한를 유지하는 장점이클래스 참조 멤버가 같은 클래스의 다른 멤버를 가리키고 있음
struct Angle {
float heading;
float elevation;
float bank;
float &yaw = heading;
float &pitch = elevation;
float &roll = bank;
// Some Constructors (copy and assignment have to be made manually)
}
: 고도-은행은
그래서 나는 다음 (11 C++에서 수행)했다. 예를 들어 컴파일러가 참조가 필요했다 알아낼 것입니다 경우, 또는이 구조에서 포인터를 유지한다면Angle angle;
rotate(angle.yaw); // this is equivalent to rotate(angle.heading)
궁금 해서요.
또한 한 회원에게는 두 개의 이름을 사용하는 것이 더 좋은 방법입니까?
기본적으로 나는 똑같은 것을 쓰고있었습니다 :) 그러나 실제 속성에 대한 참조를 반환해서는 안됩니까? 그렇지 않으면 대체 이름을 통해 수정할 수 없습니다. 사실,'const float & yaw() const;'와'float & yaw();'두 가지 메소드가 제공되어야한다. 그런 다음 상수'각도 '에 대한 참조로도 작동합니다. – betabandido
@betabandido 편집 내 코드 away^_^그것이'pseudocode'라고 말한 것입니다. 분명히 이것은^_ ^과 완전히 같지 않을 것입니다. (그리고 저는 참고 문헌 btw : -P를 반환합니다) – Neal
@LuchianGrigore ahhh! ** 의사 코드 ** ___ 의사 코드 __ _ 의사 코드. – Neal