每次我把一个新的' temp‘板添加到向量中,它就会把前面所有的都改成我刚添加的那个,所以最后我得到了一个包含相同临时变量的向量……为什么会这样呢?在调用ChangeBoard()之后,板子会被更新(板子声明为char**,而不是'new')。ChangeBoard(); //makes changes to board
temp = board; //sets temp to the late
我有两个线程(使用boost线程库)和Windows (visual studio 2005)上的全局向量。我已经创建了线程-第一个是读取文件(vector.push_back(value))并增加“读计数器”,另一个是处理已经加载的数据(第二个“指针”记住向量中已经处理的索引)。Unhandled exception at 0x0041350c in program.exe: 0xC0000005: Access violation writing location 0x00b8221
我写了一个简单的线程,它的任务只是从硬盘读取数据,把它放在一个容器中,并用时间戳和唯一Id标记它。之后,我将把新结构化的数据写入内存映射文件中。问题是我不关心数据的内部结构,我的意思是它可以是Wav格式的(因为在实际情况下,我将处理一些音频数据,每个数据平均为3MB),但我不会对这些数据进行任何操作。在将它插入到我的结构中之后,我将只处理UniqueId和数据标记。示例结构类似于:
Struct S