草庐IT

标准化

全部标签

c++ - 如何告诉 scons 使用 C++11 标准

我没找到如何告诉scons接受c++11标准:SConstruct文件:env=Environment(CPPPATH='/usr/include/boost/',CPPDEFINES=[],LIBS=[],SCONS_CXX_STANDARD="c++11")env.Program('Hello',Glob('src/*.cpp'))cpp文件:#includeclassA{};intmain(){std::cout调用scons时的错误信息:scons:ReadingSConscriptfiles...scons:donereadingSConscriptfiles.scons:B

c++ - 为什么标准 C++ 库中的某些标识符很短?

为什么有些C++名称很短,有时很难理解,如strcmp,cout,cin等。但是在Java等其他语言中名字都不短。它能节省时间、内存还是什么? 最佳答案 这主要适用于从C“继承”的标准C++库部分。在C语言的C89之前的标准中,外部标识符的重要部分被限制为6个字符;允许链接器忽略剩余的字符。这就是标准C库将标识符长度限制为6个字符的原因。C++并入了那个库“批发”,连同有些神秘的标识符。 关于c++-为什么标准C++库中的某些标识符很短?,我们在StackOverflow上找到一个类似的

不符合国际安全标准:策略未遵循如ISO/IEC 27001等国际标准

不符合国际安全标准:策略管理存在的问题及解决方法随着互联网的飞速发展以及企业对数据安全和隐私保护需求的不断增加,国际信息安全标准化组织(ISO/IEC27001)制定了一套完善的信息安全管理规范体系来帮助企业有效控制风险、提高安全防护能力。然而在实际应用中我们发现许多企业的网络防火墙上存在着与ISO/IEC27001标准不符的策略问题;这类问题的存在使得企业无法达到预期的网络安全防护效果。本文将对这些问题进行分析并提出相应的解决建议以助于企业在网络防火墙政策方面实现国际化安全保障需求。1.策略未按照国际安全要求进行制定和审核很多公司的网络安全人员没有严格按照ISO/IEC27001的流程和要求

c++ - C 标准库的(其余部分)未涵盖 C 标准库的哪些部分?

TheC++libraryincludesthesamedefinitionsastheClanguagelibrary但C++库似乎在非C库头文件中复制(/扩展)了C库的某些功能。比如C库有,C++库有和;C库有,C+库有和。如果我需要一个字符串类,我假设我最好使用而不是,因为可以受益于C++中的所有非C功能(例如异常)。但是C库中有一些功能在C++库中没有以任何其他形式存在。例如,我在之外找不到像memcpy和memcmp这样的东西。C库的哪些部分在非C库头文件中没有类似物?(如果C++标准的版本对此很重要,我对C++11感兴趣。) 最佳答案

c++ - 在构造函数 C++ 标准中修改 const 吗?

在构造函数中修改const是C++标准吗?我正在修改我的struct删除固定值(默认成员初始值设定项)以便稍后在构造函数时设置它但我忘记删除const关键字并稍后注意到它。令我惊讶的是,我没有遇到编译错误,它工作正常,但对于测试用例2,它提供了一个编译器。它们有何不同?测试用例1:structA{constintx=2;A():x(3){}};测试用例2:structA{constintx=2;A(){x=3;//compileerror!error:read-onlyvariableisnotassignable}}; 最佳答案

c++ - 使用 `A<int>::template B<int> x;` 定义变量是否符合 C++ 标准?

这个问题在这里已经有了答案:WhereandwhydoIhavetoputthe"template"and"typename"keywords?(8个答案)关闭8年前。gcc、vc++和clang接受以下代码。templatestructA{templatestructB{};};intmain(){A::By;//OKasexpectedA::templateBx;//AlsoOK!Isthisstandard-compliant?};使用A::templateBx;定义变量是否符合C++标准??

c++ - 将 const 添加到 size_t 会导致编译失败是标准行为吗?

我最近读了一篇很酷的文章:https://akrzemi1.wordpress.com/2015/08/20/can-you-see-the-bug/在ideone上玩简化版时,我得到了令人惊讶的行为:#include#includeusingnamespacestd;intmain(){constsize_tsz=258;strings{sz,'#'};assert(2==s.size());}不编译,但是删除const的相同程序编译:#include#includeusingnamespacestd;intmain(){size_tsz=258;strings{sz,'#'};as

c++ - 为什么标准同时提供了 is_integer 和 is_exact?

std::numeric_limits提供了2个互斥的常量:is_integer:“true对于所有整数算术类型T”is_exact:“true对于所有使用精确表示的算术类型T”是否存在非精确整数类型的可能性?在这里允许做什么?在我知道我是否正在处理精确数字的所有模板中,我使用了is_integer,我现在是否还需要添加对is_exact的检查? 最佳答案 来自is_exactcppreference页面:NotesWhileallfundamentaltypesTforwhichstd::numeric_limits::is_ex

c++ - 为什么 C++ 标准要求 `Clock::now` 函数为 `static` ?

在C++11中,C++在标准中有一些计时工具。这些设施之一是时钟的标准接口(interface),它基本上允许在调用时钟的now函数时获取时间。到目前为止一切都很好,但我看不出要求now是静态函数的原因。在托管系统上,标准时钟可能可以纯粹通过系统调用或通过读取处理器计数器等来实现。但是,这限制了需要维护某些状态的自定义时钟的实现。使用此接口(interface),要么无法实现某些时钟,要么必须使用全局状态。我遇到的一个问题基本上是将本地时钟与我从NTP服务器获取的时间同步。代码看起来像这样:classsntp_clock{public:sntp_clock():local_time_a

c++ - 使用 istream_iterator 并从标准输入或文件中读取

我正在使用MicrosoftVisualC++编写程序,我希望我的程序使用istream_iterator从标准输入或文件中读取。谷歌搜索互联网并没有显示我认为它必须多么简单。因此,例如,我可以很容易地编写并从标准输入中读取:#include#include#includeusingnamespacestd;intmain(){istream_iteratormy_it(cin);for(;my_it!=istream_iterator();my_it++)printf("%s\n",(*my_it).c_str());}或者我可以写这个并从文件中读取:#include#include