boost::units
라이브러리를 사용하고 있습니다. 내 문제는 내 길이 벡터를 cmath 계산을위한 이중 벡터로 변환해야한다는 것입니다.부스트 :: 단위를 숫자 형식으로 입력하십시오.
pow(tmpVector.at(cnt),cnt)
cnt는 루프 카운터입니다. 캐스팅하지 않고 계산을 시도하면 boost::units::length
에 대한 캐스팅 정의가 double
에 없다는 오류를 되 살릴 수 있습니다.
작동하지 않는 static_cast와 작동하지 않는 부스트 라이브러리의 numeric_cast를 사용하려고했습니다. 두 번째 경우 나는 다음과 같은 컴파일러 오류가 나타납니다 내가 인터넷에서 아무 것도 발견
e:\testvs12\libraries\thirdparty\boost\boost\numeric\conversion\converter_policies.hpp(187): error C2440: 'static_cast': 'const std::vector<_Ty>' can not convert into 'std::vector<_Ty>'
을 - 당신의 하나가 나에게
질문 1을 도울 수 있기를 바랍니다 : 루프 내부 펑을 사용할 수있는 가능성이 boost::units
및 루프 카운터를 지수로 사용 하시겠습니까?
질문 2 : boost::units
유형을 어떻게 할 수 있습니까? 두 배?
미리 감사드립니다.
당신은 [SSCCE] (http://sscce.org)를 섭취 할 수 있습니까? 나는 당신에게'length'의 벡터가없고'quantity'의 벡터를 가지고 있다고 가정합니까? 'meter','feet' 또는 당신이 사용하기 원하는 단위로 나눠 보려고 했습니까? 1 미터가 이중으로 변환되면 '100.0'(i cm), '39.3701' (inches) 또는 다른 값이 될 수 있습니다. –
이것은 무엇입니까? tmpVector.at (cnt) .value() http://www.boost.org/doc/libs/1_37_0/doc/html/boost/units/quantity.html#id3387713-bb – qPCR4vir
죄송합니다, 예 수량 –
KaHo