안녕하세요. 천리안 프로그래머 포럼 C++Builder 담당 임펠리테리입니다.
그것은 빌더의 헬프가 잘못되어 있는 겁니다. 몇달전에 저도 그와 같은 경우를 겪었
었죠. 빌더의 헬프에는 FloatToStrF() 함수의 인자가 TFloatFormat 형인 것으로
나와있습니다만, 사실은 TStringFloatFormat 형이며, 이 타입은 헬프에는 나오지도
않습니다. 이 TStringFloatFormat형의 선언을 보시려면 \include\vcl\dstring.h 를
찾아보시면 됩니다. 내용은 다음과 같죠.
// the TStringFloatFormat enum is used by FloatToStrF
enum TStringFloatFormat
{sffGeneral, sffExponent, sffFixed, sffNumber, sffCurrency};
보시다시피, TFloatFormat 형과 거의 같습니다만 앞에 s가 하나씩 더 붙는 이름을
가지고 있습니다. 이 타입을 쓰셔야 에러를 피할 수 있습니다. enum 으로 선언된
TStringFloatFormat 형 대신 정수인 0 값을 넣었으니 당연히 컴파일시에 워닝이
뜨죠.
그럼 참고하시길..
임펠리테리 박지훈이었습니다.
(cbuilder, cbuilder@thrunet.com)
|