继上次Clist在动态库中发生问题后,这次Cstring出现了同样的问题。看如下代码:
void fun(cstring str) { } ; void main() { fun("good boy") ; ---- }
看以上函数,应无问题,但是如果fun一旦做成dll接口函数的话,此种cstring使用就会出现崩溃啦。
具体原因还不是很清楚,且Debug模式崩溃,Release下好用。 以前clist对象在dll中开辟空间在主程序中尝试释放肯定有问题,那是因为clist对象自始至终是同一个对象,而现在fun形参在发生拷贝构造的时候创建了新的对象。
需进一步查证,参考文章:
http://blogs.msdn.com/oldnewthing/archive/2006/09/15/755966.aspx