2013-10-16 3 views
14

Boost.Units을 활용하려는 소프트웨어 디자인 작업 중입니다. 내가 사용하고자하는 유닛 중 일부는 시간을 표현하지만, 표준이기 때문에 C++ 11 std::chrono 유닛을 사용하려고합니다.std :: chrono & Boost.Units

Boost.Unitschrono 사이에 깔끔한 통합이 있는지, 또는 내 자신의 변환기를 작성하고 형식간에 스칼라 값을 복사하여 형식 안전성을 잃어야하는지 궁금합니다.

이 문제에 대한 유용한 정보가 있습니까?

+2

최근에 나는'boost :: units' 작업을 시작했습니다. AFAICT에는 시간이나'boost :: chrono'와 관련이 없습니다. 나는'boost :: units'과'boost :: chrono'의 개념이 너무 다르다고 생각한다. 그러나'std :: chrono'를 기반으로 (.. 또는 re-implements)'boost :: date_time'을 살펴볼 수 있습니다. 거기서 시간의 생각할 수있는 양상을 다루는 과다한 수업을 발견 할 것입니다. – user23573

+0

아마 새로운 클래스에 스칼라를 감싸고, 따라서'getAs [Type]'함수를 제공하면서 스칼라를 가린다? 실패의 원 포인트는 많은 것보다 낫습니다. – Conduit

+0

여기에 오는 질문에는 관련성이 있지만 약간 다릅니다. https://stackoverflow.com/questions/4910373/interoperability-between-boostdate-time-and-stdchrono –

답변

0

이것은 완벽한 대답은 아니지만 boost :: chrono는 example itself (devel) (version at time of writing)에 정의 된 단위 시스템과 통합하는 방법의 예를 제공합니다.

기본적으로 boost.units examples for quaternion and complex numbers을 기반으로 새로운 사용자 정의 단위에 대한 추가 코드가 필요할 수 있지만 std :: chrono 단위에 대해 동일한 기능을 정의 할 수 있어야합니다.

유용한 정보가있을 수도있는 비슷하지만 약간 다른 차이가 있습니다 (question regarding boost::date_time).

죄송합니다.이 답변은 완전한 답변이 아니지만 다른 사람이 작성할 수있는 시작일 것입니다.