草庐IT

行业标准

全部标签

c++ - 为什么C++标准中的declaration-seq是这样写的?

declaration-seq:declarationdeclaration-seqdeclaration不是这样的:declaration-seq:declarationdeclarationdeclaration-seq这两个定义可以互换吗?它们有什么区别? 最佳答案 这是C++的C遗产的遗迹。C语法(几乎)是LALR(1),因此使用leftrecursion越多越好。C++语法甚至不再是模糊的LALR,但许多规则仍然以LALR解析器更喜欢的形式编写,因为没有理由改变它们——任何强大到足以处理C++的解析器算法都不关心哪种类型的

c++ - C++ 语言标准对 static_cast 如何处理减小整数的大小有何规定?

我想知道C++语言标准针对以下情况指定的规则:longx=200;shorty=static_cast(x);y是否保证为200,还是标准将其留给实现来决定?各种编译器对标准的遵守程度如何? 最佳答案 在本例中为static_cast是一个“显式类型转换”。该标准对4.7/3“积分转换”中的积分转换有这样的说法:Ifthedestinationtypeissigned,thevalueisunchangedifitcanberepresentedinthedestinationtype(andbit-fieldwidth);othe

c++ - 获取 C++0x 随机数生成器状态的标准方法是什么?

我正在尝试学习新的C++0x随机数生成器(26.5)方法,并在符合C++0x的随机数引擎(26.5.1.4)上实现。该标准详细介绍了种子序列所需的接口(interface),以及如何将它们传递给引擎的构造函数或seed函数。但是,我找不到任何标准接口(interface)来从引擎创建或生成种子序列,从而获取其内部状态。有吗?或者只能通过复制构造/分配或复制初始种子序列在引擎之间复制状态?如果不可能,有谁知道不提供这样的接口(interface)的理由是什么(如果有的话)? 最佳答案 没有用于从引擎状态生成种子或种子序列的API。然而

c++ - 跨流行工具链的标准容器重新分配乘数

std::basic_string和std::vector等容器在内部容量用完时执行自动重新分配。该标准规定,在重新分配后,.capacity()>=.size()。主流工具链在执行重新分配时使用的一些实际乘数是什么?更新到目前为止,我有:Dinkumware:1.5(shipswithMSVSandpossiblyICC)GNUlibstdc++:2(shipswithGCCandpossiblyICC)RW/Apachestdcxx:1.618(akaφ)STLport:2 最佳答案 旧问题的新答案。基本原理:可以通过编程方式和

GreatSQL荣获2023 InfoQ“技术生态构建奖” 助力行业变革之路

1月31日,InfoQ极客传媒合作伙伴年度盛典在北京举办,围绕“有被Q到”主题精彩展开。GreatSQL受邀参会,与诸多IT行业伙伴相聚一堂,共筑开发者生态,共话技术前沿与商业创新。会议期间,InfoQ为全国技术行业做出突出贡献的企业和项目进行了颁奖。GreatSQL开源数据库社区凭借在开源领域的贡献度、活跃度及技术生态建设能力,荣获“技术生态构建奖”。该奖项致力于表彰投身技术社区生态建设、持续为开发者提供有价值的内容和活动、为行业搭建交流桥梁、为开发者铺设成长道路的组织或企业。GreatSQL荣获InfoQ“2023年度技术生态构建奖”技术的发展创新离不开一个良好稳定的生态环境,GreatS

c++ - Android-ndk(r7)编译.cpp文件时如何开启 "C++0X"实验标准?

在检查“android-ndk-linux_x86/sources/cxx-STL/gnu-libstdc++/include/memory”头文件时,我发现这个头文件包括其他STL头文件,根据__GXX_EXPERIMENTAL_CXX0X__旗帜。我认为这个标志与“C++0X”标准有关,这个标准在Android-ndkr7中可能还处于试验阶段。但是,我想在我的项目中启用这个C++标准。(我不确定这个“C++0X”标准是否已经默认开启)我想知道在编译Android项目的“project/jni”目录下的.cpp文件时,我应该如何告诉Android-ndk设置这个标志。或者如何在我的应

数据标准与数据仓库:实现企业级数据管理

1.背景介绍数据标准和数据仓库是企业级数据管理中的两个关键概念。数据标准确定了数据的格式、结构和语义,使得不同来源的数据能够相互兼容和整合。数据仓库则是一个用于存储、管理和分析企业数据的大型数据库系统。数据标准和数据仓库的发展与企业级数据管理的需求密切相关。随着企业规模的扩大和数据量的增加,企业需要更加高效、准确地管理和分析数据。数据标准和数据仓库提供了一种解决方案,有助于企业实现数据的一致性、可靠性和可用性。本文将从以下几个方面进行阐述:背景介绍核心概念与联系核心算法原理和具体操作步骤以及数学模型公式详细讲解具体代码实例和详细解释说明未来发展趋势与挑战附录常见问题与解答2.核心概念与联系2.

c++ - 包含 C++ 标准库

是否可以在单个语句中包含C++标准库,还是必须逐个header执行? 最佳答案 不,没有包含所有标准header的捷径。通常,您必须分别包含您需要的每一项。创建一个包含所有标准库头文件的头文件是可能的——类似于all.h。但是,您应该考虑这样做是否明智,因为它会显着延长编译时间。此外,在做出此类决定之前,请确保您了解C++编译模型。如果您还不知道,请了解什么是翻译单元、目标文件、链接器的作用以及包含库头和链接库之间的区别。 关于c++-包含C++标准库,我们在StackOverflow上

c++ - 相同的地址,多个 shared_ptr 计数器,C++ 标准是否禁止?

假设我有如下需求(这只是讨论C++标准的一些想象代码,所以我不会讨论为什么我这样设计它,所以不要打扰我这样的事情:你的设计错误。)T*ptr=newT;shared_ptrp(ptr);shared_ptrq(ptr,SomeDeleterThatDoesnotDeleteButDoSomeOtherStuff());假设逻辑保证p或它的某些拷贝比q的所有拷贝生命周期更长,那么实际上不会有任何问题。我的问题是,它是否被C++标准禁止,例如C++标准明确声明为UB,以便不同的shared_ptr计数器共享相同的地址?谢谢。 最佳答案

c++ - 这段代码的编译是标准行为吗?

考虑以下代码:structUndefined;templatevoidTemplateFunction(){Undefinedobj;}intmain(){return0;}我一直觉得模板函数和模板方法(或模板类的方法部分)只会检查语法(除非它们被实例化),在这种情况下,上面的代码应该编译。问题是,它不能用Xcode(版本:4.3.2,使用LLVM编译器)编译,现在我想知道上面的代码是否是非标准的,即它应该不编译符合C++03标准的编译器?Xcode的错误是:Variablehasincompletetype"Undefined"请注意,在原始代码中,undefinedobject是静