- mongodb - 在 MongoDB mapreduce 中,如何展平值对象?
- javascript - 对象传播与 Object.assign
- html - 输入类型 ="submit"Vs 按钮标签它们可以互换吗?
- sql - 使用 MongoDB 而不是 MS SQL Server 的优缺点
我以前用 C/C++ 进行过相当多的编程,但现在它只占我所做编程的一小部分(脚本语言更适合我所做的很多工作)。过去几天我从事了一些 C 编程项目,我很惊讶我一直忘记有多少小的语法细节。更糟糕的是cc
/gcc
通常有关于这些问题的神秘或非信息性错误消息(抱歉,我不记得任何具体示例)。
我了解了 clang
编译器不久前决定尝试一下。错误消息更清晰,帮助我识别和修复语法中的问题。我的问题是为什么这个工具没有被更多地使用/提及?与通常的嫌疑人( cc
/gcc
)相比,它是不是太新了,还是它不支持他们支持的功能,或者只是更难获得?我很难相信最后一个,因为它是与我的 iMac 上的开发工具一起安装的,并且需要一个命令 (sudo apt-get install clang
) 才能安装到我的 Ubuntu 机器上。
最佳答案
My question is why this tool is not used/mentioned more than it is?
这可能是因为历史,以及我们人类通常的行为方式。
传统上,gcc 是唯一一个真正的(免费)编译器,可以实际用于在至少所有免费的 *nix 克隆上编译 C 程序。它几乎是 linux 的所有基本系统和内核、*BSD、现在可能是 OSX 和其他的编译器。
虽然缺陷无处不在,但基本上这意味着:gcc 有效。如果它没有损坏,请不要修复它。除此之外,您现在拥有庞大的用户群,很容易获得 gcc 的帮助,有很多人使用过 gcc,正在研究 gcc 本身等等。
一般来说,如果你想将一个庞大的社区从他们习惯的东西转变为其他东西,那么“其他东西”必须*明显“更好。仅仅“更好”通常是不够的。我认为你可以在社会的许多领域找到这样的例子。
clang 较新,如果它能够胜任任务,如果它有错误,如果它产生较慢的代码等,有些人会怀疑 - 怀疑似乎是人类的天性 - 新事物是可怕的。许多人甚至不知道 clang,许多人不在乎,因为他们对 gcc 很满意。
不过,如果您更愿意使用 clang,那就去吧 - 与 gcc 相比,错误消息确实“更好”且更易于理解。
关于c++ - 为什么没有更多地使用clang?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4885903/
我正在使用 Gunicorn 为 Django 应用程序提供服务,它工作正常,直到我将其超时时间从 30 秒更改为 900000 秒,我不得不这样做,因为我有一个用例需要上传和处理一个巨大的文件(过程
我有一个带有非常基本的管道的Jenkinsfile,它可以旋转docker容器: pipeline { agent { dockerfile { args '-u root' } } stag
在学习 MEAN 堆栈的过程中,我遇到了一个问题。每当我尝试使用 Passport 验证方法时,它都不会返回任何响应。我总是收到“localhost没有发送任何数据。ERR_EMPTY_RESPONS
在当今的大多数企业堆栈中,数据库是我们存储所有秘密的地方。它是安全屋,是待命室,也是用于存储可能非常私密或极具价值的物品的集散地。对于依赖它的数据库管理员、程序员和DevOps团队来说,保护它免受所
是否可以创建像图片上那样的边框?只需使用 css 边框属性。最终结果将是没 Angular 盒子。我不想添加额外的 html 元素。我只想为每个 li 元素添加 css 边框信息。 假设这是一个 ul
我是一名优秀的程序员,十分优秀!