2013-04-19 3 views
0

tgamma() 표준 라이브러리에서 사용하려고합니다. 나는 지시 #include <cmath>tgamma() 함수가 정의되지 않은 경우 어떻게해야합니까?

tgamma 정의되지 않은 함수

전화 : 내가 컴파일 할 때 나는 오류 메시지가 표시됩니다. 필자는 C++ 11 표준을 지원한다고 주장하는 Embarcadero C++ Builder XE3을 사용합니다. 내 문제는 무엇이며 문제를 해결하는 방법은 무엇입니까?

+0

32 비트 또는 64 비트 용으로 컴파일하고 있습니까? 64 비트 컴파일러 만 C++ 11을 지원하며 32 비트 컴파일러는 아직 지원하지 않습니다. 64 비트 용으로 컴파일하는 경우'std' 네임 스페이스를 사용하여 tgamma를 호출 하시겠습니까? '... = std :: tgamma (...); ' –

+0

64 비트 용으로 컴파일할지 여부를 어떻게 알 수 있습니까? 나는 64 비트 컴퓨터에 있지만 IDE는 Program Files (x86)에 설치되어 있습니다. 컴파일러는 32 비트와 64 비트를 모두 지원해야합니다. – user2300944

+0

프로젝트 관리자에서 ** 대상 플랫폼 ** 노드를 사용하면 프로젝트가 지원하는 개별 플랫폼을 추가하고 주어진 시간에 활성화 된 플랫폼을 설정할 수 있습니다. 32 비트 및 64 비트 Windows 및 Mac 용 별도의 컴파일러가 있으므로 컴파일 할 플랫폼을 IDE에 알려줘야합니다. –

답변

1

Boosttgamma function을 포함합니다. 물론

#include <boost/math/special_functions/gamma.hpp> 
... 
double rootPi = boost::math::tgamma<double>(0.5); 

, 당신은 항상 GCC처럼, 다른 컴파일러로 전환 할 수 있습니다.

관련 문제