Android是否抽象了设备架构
Does Android abstract the device architecture?
我是android编程的新手,我正在阅读这个问题的答案为什么不应该';Android应用程序不能用C/C++编写,因为你";只是更喜欢用C/C++编程";?在Devunwred的第一个回答中。他提到"您的本地代码必须内置到.so文件中(一个用于armv5、armv7和x86)所有文件都打包到同一个APK中。这种可执行代码的重复会使您的应用程序的大小增加3倍(即"胖二进制"),除非您在分发应用程序时承担为每个架构构建单独APK的任务"
我的问题是,我一直认为操作系统通常提供了对底层架构的抽象。因此,如果我想在不同的环境中部署c/c++程序,我需要使用为不同的操作系统编写的编译器重新编译源代码,然而,这个操作系统可能有支持不同体系结构的不同版本。如果我是对的,那么为什么Android的情况不同呢?
在某个时刻,操作系统将代码移交给CPU。二进制文件必须有针对特定CPU的指令。使用Java时,每个操作系统和CPU都可以使用相同的虚拟机,因此您不会有相同的考虑因素。
相关文章:
- 派生类是否可以在抽象工厂设计模式中具有数据成员
- 在C++单元测试上下文中,抽象基类是否应将其他抽象基类作为函数参数
- 有没有一种方法可以使用SFINAE来检测一个类型是否实现了给定的抽象基类
- c++ 中的抽象方法是否曾经调用过?
- 抽象类/接口中的空方法是否被认为是一种好的做法?
- 是否可以通过模板指定抽象类变量类型
- CRTP - 是否可以创建一个抽象基类?
- 是否具有返回抽象类型的函数标头合法
- 如何在编译时间检查课程,是否是抽象的
- 作为抽象,C++是否支持表示两个以上值之一的"bits"?
- 为工厂创建一个抽象工厂是否有意义
- 当父类是抽象的时,是否可以使用父类
- Android是否抽象了设备架构
- C++是否支持抽象数组长度
- 是否可以在C++/CLR中实现一个用C#声明的抽象类
- 我们是否有更好的方法来返回C++中的抽象类
- 确定抽象基类的构造函数是否为 noexcept
- C++抽象工厂是否应该为构造对象提供销毁方法
- 从抽象类继承的抽象方法是否存在任何性能问题
- C++ 抽象类是否应该为(虚拟)析构函数提供实现