如果 C/C++ 定义了标准 ABI,它们会“失去”什么?

2024-01-18

标题说明了一切。我专门谈论 C/C++,因为两者都认为这是“实现问题”。我认为,定义一个标准接口可以轻松地在其上构建模块系统,以及许多其他好处。
如果 C/C++ 定义了标准 ABI,它们会“失去”什么?


在每个处理器上以最自然的方式实现事物的自由。

我认为,与任何其他语言相比,c 尤其在更多不同的体系结构上具有一致的实现。遵守针对当前常见、高端、通用 CPU 进行优化的 ABI 将需要在一些更奇怪的机器上进行不自然的扭曲。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如果 C/C++ 定义了标准 ABI,它们会“失去”什么? 的相关文章

  • 为什么使用abs()或fabs()而不是条件否定?

    在 C C 中 为什么要使用abs or fabs 不使用以下代码即可查找变量的绝对值 int absoluteValue value lt 0 value value 这与较低级别的指令较少有关吗 您提出的 有条件的abs 并不等于std
  • MEX 文件中的断言导致 Matlab 崩溃

    我正在使用mxAssert 宏定义为matrix h在我的 C 代码中 mex 可以完美编译 当我调用的 mex 代码中违反断言时 该断言不会导致我的程序崩溃 而是导致 Matlab 本身崩溃 我错过了什么吗 这是有意的行为吗 当我查看 M
  • 添加对共享类的多个 WCF 服务的服务引用

    我正在尝试将我的 WCF Web 服务拆分为几个服务 而不是一个巨大的服务 但是 Visual Studio Silverlight 客户端 复制了两个服务共享的公共类 这是一个简单的例子来说明我的问题 在此示例中 有两个服务 两者都返回类
  • 如何进行带有偏差的浮点舍入(始终向上或向下舍入)?

    我想以偏置舍入浮动 要么总是向下 要么总是向上 代码中有一个特定的点 我需要这个 程序的其余部分应该像往常一样四舍五入到最接近的值 例如 我想四舍五入到最接近的 1 10 倍数 最接近 7 10 的浮点数约为 0 69999998807 但
  • 为什么基类必须有一个带有 0 个参数的构造函数?

    这不会编译 namespace Constructor0Args class Base public Base int x class Derived Base class Program static void Main string a
  • 处理 fanart.tv Web 服务响应 JSON 和 C#

    我正在尝试使用 fanart tv Webservice API 但有几个问题 我正在使用 Json Net Newtonsoft Json 并通过其他 Web 服务将 JSON 响应直接反序列化为 C 对象 这里的问题是元素名称正在更改
  • 有什么工具可以说明每种方法运行需要多长时间?

    我的程序的某些部分速度很慢 我想知道是否有我可以使用的工具 例如它可以告诉我可以运行 methodA 花了 100ms 等等 或者类似的有用信息 如果您使用的是 Visual Studio Team System 性能工具 中有一个内置分析
  • Linux TUN/TAP:无法从 TAP 设备读回数据

    问题是关于如何正确配置想要使用 Tun Tap 模块的 Linux 主机 My Goal 利用现有的路由软件 以下为APP1和APP2 但拦截并修改其发送和接收的所有消息 由Mediator完成 我的场景 Ubuntu 10 04 Mach
  • 在 Xcode4 中使用 Boost

    有人设置 C Xcode4 项目来使用 Boost 吗 对于一个简单的 C 控制台应用程序 我需要在 Xcode 中设置哪些设置 Thanks 用这个来管理它 和这个
  • 如何在 VS 中键入时显示方法的完整文档?

    标题非常具有描述性 是否有任何扩展可以让我看到我正在输入的方法的完整文档 我想查看文档 因为我可以在对象浏览器中看到它 其中包含参数的描述和所有内容 而不仅仅是一些 摘要 当然可以选择查看所有覆盖 它可能是智能感知的一部分 或者我不知道它并
  • Xamarin Android:获取内存中的所有进程

    有没有办法读取所有进程 而不仅仅是正在运行的进程 如果我对 Android 的理解正确的话 一次只有一个进程在运行 其他所有进程都被冻结 后台进程被忽略 您可以使用以下代码片段获取当前正在运行的所有 Android 应用程序进程 Activ
  • 为什么 FTPWebRequest 或 WebRequest 通常不接受 /../ 路径?

    我正在尝试从 ftp Web 服务器自动执行一些上传 下载任务 当我通过客户端甚至通过 Firefox 连接到服务器时 为了访问我的目录 我必须指定如下路径 ftp ftpserver com AB00000 incoming files
  • 通过不同 DLL 或 EXE 中的指针或引用访问 STL 对象时发生访问冲突

    我在使用旧版 VC6 时遇到以下问题 我只是无法切换到现代编译器 因为我正在处理遗留代码库 http support microsoft com kb 172396 http support microsoft com kb 172396
  • C# 编译器如何决定发出可重定向的程序集引用?

    NET Compact Framework 引入了可重定向程序集引用 现在用于支持可移植类库 基本上 编译器会发出以下 MSIL assembly extern retargetable mscorlib publickeytoken 7C
  • std::bind 重载解析

    下面的代码工作正常 include
  • 从匿名类型获取值

    我有一个方法如下 public void MyMethod object obj implement 我这样称呼它 MyMethod new myparam waoww 那么我该如何实施MyMethod 获取 myparam 值 Edit
  • C# 搜索目录中包含字符串的所有文件,然后返回该字符串

    使用用户在文本框中输入的内容 我想搜索目录中的哪个文件包含该文本 然后我想解析出信息 但我似乎找不到该字符串或至少返回信息 任何帮助将不胜感激 我当前的代码 private void btnSearchSerial Click object
  • gdb查找行号的内存地址

    假设我已将 gdb 附加到一个进程 并且在其内存布局中有一个文件和行号 我想要其内存地址 如何获取文件x中第n行的内存地址 这是在 Linux x86 上 gdb info line test c 56 Line 56 of test c
  • 为什么我使用google'smtp'无法发送电子邮件?

    我有以下程序使用 smtp gmail com 587 发送电子邮件 namespace TestMailServer class Program static void Main string args MailMessage mail
  • 运行代码首先迁移更新数据库时出错

    我在迁移到数据库时遇到问题 并且似乎找不到我遇到的错误的答案 System MissingMethodException Method not found System Data Entity Migrations Builders Tab

随机推荐

  • 如何在VIM中映射CAPS LOCK键?

    我在Windows下使用VIM 并希望将 CAPSLOCK 映射到 Ctrl 有办法做到这一点吗 顺便说一句 我在网上看到了大量如何使用注册表 hack 交换 CAPS 和 Esc 的示例 但它们都没有使用 VIM 映射命令 而是使用外部工
  • Slim 框架 - 无法用点解释路由

    问题陈述 我目前正在开发内部 RESTful API 并使用我们的主域名作为环境标识符 然而 我注意到 Slim 根本不喜欢其中有点的路线 示例案例 我有一个使用 PHP 内置 Web 服务器运行的本地 Web 服务器 并且我调用了php
  • 读取 Vertex AI Pipelines 中的数据

    这是我第一次使用 Google 的 Vertex AI Pipelines 我检查了这个代码实验室 https codelabs developers google com vertex pipelines intro hl en 0也这个
  • 在任务管理器中更改进程名称[重复]

    这个问题在这里已经有答案了 我有一个在服务器上运行的 Windows 窗体应用程序 现在我需要同时运行同一应用程序的多个实例 每个实例将连接到不同的数据库 在应用程序启动期间 我更改了标题 以便可以识别正在连接的数据库 但我也想更改任务管理
  • 如何在 Visual Studio 项目模板中使用变量设置文件名

    我有一个 VS 2013 项目模板 其中包含如下项目
  • 添加/组合标准差

    简洁版本 可以添加 组合标准差吗 IE if StdDev 11 14 16 17 X and StdDev 21 34 43 12 Y can we calculate StdDev 11 14 16 17 21 34 43 12 fro
  • Android - 按钮彼此相邻

    我无法将按钮放在一起 我已经研究过这个话题 但似乎没有任何帮助 这是我的 XML 代码 Link http pastebin com d6gxDLTU 现在的显示方式如下 我的屏幕 https i stack imgur com ocagu
  • 使用javascript从mp3读取id3标签

    我知道以前已经有人问过这个问题 但我的条件有点不同 我正在制作一个 Chrome 应用程序 因此我可以访问它支持的所有最新 JavaScript 文件 api 而不必担心兼容性 更重要的是 我真的很想自己做这件事 即没有任何图书馆 教程或指
  • PostgreSQL 跨服务器查询? [关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 有没有办法可以查询位于 服务器 2 上的数据库并获取 服务器 1 中的数据 那就是将一组记录从远程服务器返回到我的本地服务器 PS 不
  • char数组前面的&号会影响scanf吗?合法吗?

    我们平时输入字符串的时候是这样做的 include
  • Firefox 附加组件 window.navigator.userAgent 错误:窗口未定义

    我想得到userAgent https developer mozilla org en US docs Web API NavigatorID userAgent并想对其进行一些解析 我的代码是 var userAgentInfo use
  • SwiftUI - 如何添加 Scenekit 场景

    如何将 Scenekit 场景添加到 SwiftUI 视图 我使用标准船舶场景示例尝试了以下 Hello World import SwiftUI import SceneKit struct SwiftUIView View var bo
  • 以编程方式更改和刷新图标(无需重新启动)

    当我手动替换图标 即不是从资源管理器中的 文件夹选项 窗口 时 图标不会更新 例如 如果我执行此批处理代码 REG ADD HKCR testfile DefaultIcon ve d C test ico 0 f 图标在文件夹选项的列表中
  • EC2 服务器上的 MongoDB 还是 AWS SimpleDB?

    什么场景更有意义 托管多个安装了 MongoDB 的 EC2 实例 还是使用 Amazon SimpleDB Web 服务 当有多个带有 MongoDB 的 EC2 实例时 我遇到了自己设置实例的问题 当使用 SimpleDB 时 我遇到了
  • 我怎样才能知道哪里的内存段全为零

    我的意思是 我分配了一段内存 也许是 1k 也许是 20 字节 假设指针是pMem我怎样才能知道内容pMem所提及的就是全部Zero or 0 我知道memcmp但第二个参数应该是另一个内存地址 谢谢 正如其他人已经建议的那样 你可能想要m
  • 上传到 Azure Blob 存储时设置内容类型

    我正在使用 Azure Blob 存储客户端库上传静态站点 blob service client BlobServiceClient from connection string az string blob client blob se
  • 当应用程序为 preApi9 时,Google 下载器的 eclipse 库项目中出现 styles.xml 错误

    我正在使用新的谷歌扩展包内容 下载器的谷歌库项目有一个特殊的values v9 styles xml 文件用于通知文本属性 当使用该库的应用程序是 preAPI9 时 这会导致错误 至少对我来说 它指的是一些仅在api9中出现的样式东西 我
  • 如果表单位于具有 ng-if 条件的 div 内,则无法读取未定义的属性“$valid”

    我有一个使用 ng if 在 div 内形成表单健康 状况 最初表单是关闭的 单击按钮后 将显示表单 但在提交表格时 我得到Cannot read property valid of undefined错误 如果我更改ngif和ng sho
  • 将树视图中的复选框与使用远程数据源的复选框绑定

    我在这里布置一个情况 我遇到一种情况 我需要在表单上显示几个复选框 这些复选框本质上是分层的 其中一些属于一个类别 另一些属于第二个类别 依此类推 我的第一个想法是使用带有复选框的 KendoUI 树视图 我有几个与此相关的问题 显然 存在
  • 如果 C/C++ 定义了标准 ABI,它们会“失去”什么?

    标题说明了一切 我专门谈论 C C 因为两者都认为这是 实现问题 我认为 定义一个标准接口可以轻松地在其上构建模块系统 以及许多其他好处 如果 C C 定义了标准 ABI 它们会 失去 什么 在每个处理器上以最自然的方式实现事物的自由 我认