TAG:c++

2020-6-29 22:21
C++17中的多态分配器的概念是对标准库中的标准分配器的增强。 它比常规的分配器更容易使用,并且允许容器具有相同的类型,而拥有不同的分配器,甚至可以在运行时更改分配器。 让我们看看如何使用它和Hack来查看std::Vector容器的增长情况。 简而言之,多态分配器符合标准库中分配器的规则。不过,在其核心部分,它使用......
2020-6-29 11:59
使用C++模板编写HTML。HTML文档表示为单个深度嵌套类型,编译器使用有关HTML元素如何允许嵌套的某些规则进行类型检查(例如,任何内容都不能是<;br>;标记的子级)。 如果编译成功,您将拥有一个在运行时将正确缩进的HTML文档打印到标准输出的程序。 <;html>;<;Head>;&l......
2020-6-24 9:24
不久前,约翰·普莱斯和我为C语言发明了一个外部模块系统。它对我们很有效,但从未流行起来。也许这会对你们中的一些人有用。 Sloth是一个雄心勃勃的项目(可供2到3个人使用)的一部分,该项目名为Popshop(我在我的软件成功帖子中提到了这一点)。 这一切开始时都是无害的-为什么我不编写一个Lucid解释器呢? 一个相......
2020-6-19 2:38
在C++20中,std::Sort与其他标准算法一起变成了constexpr。这使得以下代码成为可能。 第14行的sorted_arr在编译时被初始化为{1,2,3,4,5},并且main返回1。如您所见,机器代码中没有排序算法和逻辑的痕迹。此外,如果您打开优化(-O3),整个代码就会变成一条指令,从而证明所有排序都......
2020-6-18 15:38
JetBrains已经连续第四年进行了开发者生态系统调查。它现在绝对不只是一个技术景观的快照-它是一个时间表,说明了这个景观的演变。通过一组每年重复的核心问题,它不仅让我们对生态系统的当前状态有了一个有用的了解,还让我们对社区的主要趋势有了一个更全面和更有价值的概述。 每年我们都会磨练我们的问题,以减少不确定性和模糊......
2020-6-15 14:7
使用C++本机库和图形库以及鼠标事件完全从头做起的GUI记事本。 CNotepad是我在高中(12年级)项目期间开发的一个非常简单的应用程序,作为课程的一部分它已经在我的邮件中存放了3年多,现在我很乐意为每个人开放这个项目。因此,首先我要感谢我的高中老师,Aswathy夫人对这个项目的压倒性支持。我想说的是,CNot......
2020-6-14 22:36
为了帮助支持我们的社区在新冠肺炎期间远程工作,我们将在2020年6月30日之前免费提供ACM在我们数字图书馆中发布的所有作品。了解更多。 我们使用饼干,以确保我们给你最好的经验,在我们的网站。 您的浏览器似乎不支持它们,这会影响网站功能。
2020-6-7 7:47
在糟糕的一年里,这是一个伟大的时刻。5月30日,SpaceX的“龙”机组成员成功地将NASA宇航员鲍勃·本肯(Bob Behnken)和道格·赫尔利(Doug Hurley)送入轨道。这是有史以来第一艘私人载人飞船,也是九年来首次美国载人航天飞行。搭载它们的是SpaceX的可重复使用的猎鹰9号,该猎鹰9号由火箭燃料和......
2020-6-6 18:16
GitHub是5000多万开发人员的家园,他们一起工作,共同托管和审查代码、管理项目和构建软件。 报名。 cingulata(发音为tchingulata&34;)是一个编译器工具链和RTE,用于通过完全同态加密技术在加密数据上运行C++程序。 cingulata(发音为tchingulata&34;)是一个编译器工......
2020-6-2 22:33
不久前,我访问了Mario Wolczko的网站(http://www.wolczko.com/st80)),当时我正在搜索与著名的Smalltalk蓝皮书相对应的原始SmallTalk-80实现(参见http://stephane.ducasse.free.fr/FreeBooks/BlueBook/Blueboo......
2020-5-31 16:43
$\BEGINGROUP$我不知道这是否会公开,但是在猎鹰9号上使用的是什么CPU/微控制器,它们运行的是什么软件?他们是否使用操作系统,或者只是裸机编程? 我找到了一些可供购买的火箭飞行计算机模型,只是想知道SpaceX对此采取了什么方法。 $\结束组$。 在这种情况下,$\egingroup$PowerPoint......
2020-5-30 15:3
乔纳森·博卡拉(Jonathan Boccara)写的,但就像一位同时也是超级英雄叔叔的哲学家曾经说过的那样,权力越大,责任就越大。 翻译成C++,这意味着如果您不小心,一些让您编写富于表现力的代码的C++功能可能会掉头并产生错误代码,而这些代码并没有做它应该做的事情。 一个很好的例子(美丽的一些定义)是逗号操作符的......
2020-5-28 19:39
在编程语言领域,没有太多非常有力的实证结果。这很可能是因为有大量的变量需要控制,而研究人员可以获得的大多数研究对象都是CS本科生。然而,我最近发现了一个在众多代码库中重复的结果,据我所知,这使其成为该领域最可靠的发现之一: 如果您有一个非常大(数百万行代码)的代码库,并且是用内存不安全的编程语言(如C或C++)编写的......
2020-5-27 5:2
在过去,我们已经写过关于JavaScript的垃圾收集、文档对象模型(DOM),以及如何在V8中实现和优化所有这些内容。不过,Chromium中并不是所有的东西都是JavaScript,因为嵌入了V8的浏览器及其Blink渲染引擎的大部分都是用C++编写的。JavaScript可用于与DOM交互,然后由呈现管道处理该......
2020-5-26 13:22
在过去的一小段时间里-好吧,很长一段时间-我一直在用C++开发一个自定义游戏引擎。今天,我将该游戏引擎的一部分作为开放源码框架发布。它被称为胶合板框架。 请注意,胶合板本身并不是游戏引擎!它是一个使用C++构建各种软件的框架。 例如,Plywood的文档是在C++解析器的帮助下生成的,由Markdown解析器格式化,......
2020-5-25 23:15
欢迎使用在OS X、Windows和Linux上运行的Smalltalk-80系统的蓝皮书C++实现的My";by the Bluebook";C++。自从第一次在1981年8月的Byte杂志上读到关于Smalltalk的内容以来,我一直对它很感兴趣。那时,我们所有的都是运行速度很慢的8位计算机,4K内存......
2020-5-25 21:40
欢迎使用在OS X、Windows和Linux上运行的Smalltalk-80系统的蓝皮书C++实现的My";by the Bluebook";C++。自从第一次在1981年8月的Byte杂志上读到关于Smalltalk的内容以来,我一直对它很感兴趣。那时,我们所有的都是运行速度很慢的8位计算机,4K内存......
2020-5-25 16:30
作为一名计算机工程师,我的工作是用计算机解决重要问题。理想情况下,我的解决方案将是高效的,通常这意味着最大限度地利用手头的资源。很多时候,这些资源都是运行Windows的机器,尽管我对该平台心存疑虑,但正确有效地利用它会带来很多好处。 有时在另一个平台上工作时以Windows为目标就足够了,但其他时候我必须在平台上工......
2020-5-25 3:21
斯蒂芬·布伦南·2020年5月24日,就像操作系统提供的许多服务一样,多任务处理是一件理所当然的事情,以至于感觉很平凡。有了我们功能强大的智能手机和计算机,一台计算机不能同时处理数百个进程的想法让人感觉很陌生。我认为正是这样的功能让计算机变得非常有用,但也让它们感觉如此复杂和神奇。 很难玩弄实现多任务的代码,如果不构......
2020-5-24 12:26
Chromium项目发现,大约70%的严重安全漏洞是内存安全问题。我们的下一个重大项目是从源头上防止此类错误。 大约70%的严重安全错误是内存不安全问题(即C/C++指针错误)。其中一半是免费后使用的漏洞。 (基于自2015年以来影响稳定渠道的912个高或严重严重安全漏洞进行分析。)。 这些错误均匀地分布在我们的代码......
2020-5-19 22:54
当前MVP形式的WebAssembly已在所有主流浏览器上发布,并且已经能够实现令人惊叹的功能。这并不意味着它的发展已经结束:相反,在不同的发展阶段,有许多后MVP功能提案。 一个这样的建议是关于将所谓的anyref/external ref类型(和相关指令)添加到规范中。但是,什么是anyref?为什么需要将其添加......
2020-5-18 22:50
最近,我发现自己再次在论坛上写了一篇长篇帖子,内容是关于C++标准提供的随机数生成工具(C++;S<;Random>;和C';Rand)在C++中存在的问题。因为我一直在写这些,所以我决定把它们都写到一个博客帖子里,这样我以后就可以把它链接到人们身上。这就是那篇博文。 对这篇文章的简要总结是,使用C++......
2020-5-16 18:52
过去的几天很有趣。我的Twitter遭到了游戏开发社区的攻击,他们看不到现代C++的太大价值,更喜欢用非常低的抽象层来编写代码。我的Twitter遭到了游戏开发社区的攻击,他们看不到现代C++的太大价值,更喜欢用非常低的抽象层来编写代码。只不过这一次不是我发动的,不同于不久前……。 这篇文章(1)讲述了我的一条twe......
2020-5-16 3:35
它目前实现了各种刚体动力学算法,包括正动力学和逆动力学,以及基于脉冲级LCP和基于力的非线性弹簧阻尼器的接触模型。实现了电机、伺服和串联弹性执行器(SEA)动力学的执行器模型。 整个代码库都是模板化的,因此您可以使用正向和反向模式自动区分标量类型,如CppAD、Stan Math fvar和ceres::jet。该库......
2020-5-12 22:1
以下是我在2012年6月Go SF会议上的演讲文本。这是私人谈话。在这里,我不代表围棋团队中的其他任何人发言,尽管我想在前面承认,这支团队是创造并继续推动围棋发生的人。我也要感谢围棋SF组织者给我这个机会与你们交谈。几周前有人问我,你在推出围棋时遇到的最大的惊喜是什么?我立刻就知道了答案:虽然我们希望C++程序员把围......
2020-5-11 13:16
这是关于Solid As Rock设计原则的五篇系列文章的第二部分。可靠的设计原则结合在一起,使得程序员可以很容易地制作出易于维护、重用和扩展的软件。开闭原则(OCP)是本系列的第二个原则,我将在这里用现代C++的极简示例及其优点&通用准则来讨论它。 顺便说一下,如果您还没有读过我以前关于设计原则的文章,那么下面是快......
2020-5-11 3:20
PermalLink GitHub是5000多万开发人员的家园,他们一起工作,共同托管和审查代码、管理项目和构建软件。 报名。 可能你们中的许多人都遇到过错误,虽然它们很容易修复(例如,复制粘贴错误),但在修复它们之前,它们在代码中隐藏了几个月或几年。在许多情况下,这些问题的解决方案是静态和动态代码分析器和程序,以便......
2020-5-10 19:51
剧透:C++既不快也不慢--实际上,这不是重点。这篇文章延续了我们的良好传统,打破了一些俄罗斯大牌公司分享的关于铁锈语言的神话。 注意。本文最初发表在Habr.com上。在获得作者许可的情况下,它被翻译并转载到了这里。 本系列的前一篇文章的标题是“走得比锈快”,Mail.Ru得到了测量(RU)";。不久前,我试......
2020-5-10 7:34
EnTT是一个仅包含标题的、微小的、易于使用的游戏编程类库,更多的是用现代C++编写的,主要以其创新的实体-组件-系统(ECS)模型而闻名。其中,Mojang在“我的世界”中使用了它,Esri在ArcGIS Runtime SDK中使用了它。如果您在列表中没有看到您的项目,请打开一个问题,提交PR或在您的主题中添加#......
2020-5-9 15:4
C和C++预处理器类似于Windows命令提示符批处理语言:它们实现了一种非常简单的语言,人们出于某种原因仍在使用该语言,通常是通过将其推到超出其原始设计边界的方式。 预处理器并不真正理解C或C++语言。幸运的是,它使用的算术运算符与C和C++语言使用的算术运算符相同,但它对它们的理解仅限于整数。 预处理程序参数中逗......