Hi,

From the error message you receive, it seems that you are using Microsoft
Visual C++, (so some haifux guys might rightfully ask you: "And your linux question is...";-) with a debug version of the runtime library and you are messing up the dynamic memory heap.

As far as I know, the STL implementation which comes with MSVC++ does not include a hash_map, because hash_map is not part of STL, according to the C++ standard, so it seems that you are using a different implemtation of STL. So my questions are:

1) What STL implementation are you using? 2) Can you post a minimal code snippet which exposes the problem?

                                                        Emil


On Wed, 6 Jul 2005, yakoub abaya wrote:

i want to write an STL object to a file using binary stream

i have ( hash_map H,S ; ) i initielizing H using class interfase .
then write H to file , read from the same file into S

after this , S and H have the same data and H.size==S.size
but at the end of the program i get assertion faillure:
_BLOCK_TYPE_IS_VALID(phead->nBlockUse)

i asume the problem is that S was writen-to without using
its class interface and that interferes with its destruction .
is this the case ?

i thought about using the  C'tor of  S ..but couldn't see how ,
if only there was a method of hash_map that returns a fixed
array of data that can be used later to construct a new object
like in the string case  .

how do i get this done ? i need to write a large STL object to file
so that program memory usage wouldn't be too large ..

--------------------------------------------------------------------------
Haifa Linux Club Mailing List (http://www.haifux.org)
To unsub send an empty message to [EMAIL PROTECTED]




--------------------------------------------------------------------------
Haifa Linux Club Mailing List (http://www.haifux.org)
To unsub send an empty message to [EMAIL PROTECTED]


Reply via email to