说明

    在之前的Android中Jni编程,跨模块传递string空指针,会导致程序崩溃异常。在VS不同的版本之间调用动态库,其中string作为参数传递,会出现另一种错误。调试过程中,监控string的传递值,会提示:读取该字符串的字符出错


解析

    string和STL模板出现异常的基本原理是一样的,传递的内存结构和动态库的内存结构是不一致的,因为无法确保当前的程序和动态库使用的VS版本是一致的,为了避免这个问题,传递char数组是一种非常保险的做法