未验证 提交 ed56a5fd 编写于 作者: H hhj 提交者: Gitee

update zh-cn/application-dev/reference/native-lib/third_party_libc/cxx.md.

Signed-off-by: Nhhj <huanghuijin@huawei.com>
上级 e3b00651
......@@ -16,4 +16,6 @@ OHOS当前使用的是llvm项目的C++标准库实现[libc++](https://libcxx.llv
C++11、C++14标准已完全支持,C++17和C++20标准正在完善。具体语言特性支持标准可以参考[https://libcxx.llvm.org/](https://libcxx.llvm.org/)网站对应的ReleaseNotes。
## ABI兼容
在OHOS系统中,系统框架与应用Native库都在使用C++标准库,两部分的Native库的版本升级节奏是不一样。系统框架依赖的C++标准库随镜像版本升级,而应用依赖的C++标准库随编译时候使用的SDK版本升级,两部分依赖的C++基础库会跨多个大版本,要保证双方C++ ABI兼容性是非常困难的。
\ No newline at end of file
在OHOS系统中,系统框架与应用Native库都在使用C++标准库,两部分依赖的版本是不一样的。系统框架依赖的C++标准库随镜像版本升级,而应用依赖的C++标准库随编译使用的SDK版本升级,两部分依赖的C++基础库会跨多个大版本,要保证双方ABI兼容性是非常困难的。因此在OHOS上我们把两部分依赖的C++标准库进行了区分,随系统镜像携带的是libc++.so,应用自己提供的库携带的是libc++_shared.so;两个库使用的C++命名空间不一样,libc++_shared.so使用__n1作为c++符号的命名空间,libc++.so使用__h作为c++符号的命名空间。
两边使用的c++标准库不能进行混用,Native API接口当前只能是C接口,可以通过这个接口隔离两边的C++运行环境。
\ No newline at end of file
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册