STL(Stereolithography,Standard Triangulated Language) バイナリ読込みで,VC 14 でビルドした exe でダウンする.
VC 6 でビルドしたものは通っているが,たまたまエラーにならなかっただけ.
コードは,
{ size_t hStart = 0 ; v_char head ; head.resize(STL_B_HEADER_SIZE+100,0x00) ; memmove(&head,&readBuf[hStart],sizeof(STL_B_HEADER_SIZE)) ; stl.SetName(::To_tstring(head).c_str()) ; }
::To_tstring で head を利用した時にエラーとなる.
ここをコメントにすると,ブロックを抜けた時に head の解放?でエラーになる.
memmove で &head ではなく &head[0] としなければならない.
正しくは,
{ size_t hStart = 0 ; v_char head ; head.resize(STL_B_HEADER_SIZE+100,0x00) ; memmove(&head[0],&readBuf[hStart],STL_B_HEADER_SIZE) ; stl.SetName(::To_tstring(head).c_str()) ; }
v_char は次の様に定義.
typedef std::vector<char> v_char ;