返回
云风你好,谢谢你在lua list里给我的关于_CrtIsValidHeapPointer回复。 我不明白为什么同一个静态库被链接两遍就可能出问题呢?你能简单给我 讲个原理吗?
理由我在 email 里写了呀。因为静态库中有两个独立的静态变量和两份完全相同的代码,他们原本应该是一个的。
lua 通过判断指针是不是那个静态变量的地址决定是否应该调用 CRT 中的 free 来释放。当 A 代码处理 B 代码中分配出来的table 拥有 B 代码中获得的静态地址时,A 代码认为它不等同于 A 代码中认为的那个静态地址,而导致使用 crt 去 free 一个静态变量。
明白!原来是静态变量的问题。多谢多谢! - 回复 | (1249) | jason | 2006-09-15 09:14:14