草庐IT

0x80020101

全部标签

c++ - 如何构建 NS-3 以使用 C++0x/C++11 库?

我需要在网络模拟器NS-3的代码中使用像unordered_map这样的数据结构。它使用wafbuilder编译源代码。我很困惑我应该在哪里添加-std=c++0x以添加到编译器标志?我尝试使用以下方法将它附加到主wscript文件中的CXXFlags:module.env.append_value('CXXFLAGS','-std=c++0x');但我仍然收到此错误:ThisfilerequirescompilerandlibrarysupportfortheupcomingISOC++standard,C++0x.Thissupportiscurrentlyexperimental

c++ - 为什么十进制浮点运算的提议没有被 C++0x 接受?

为什么不是decimaltype接受C++0x(现在是C++11)作为完全成熟的类型还是类?他们从2005开始研究它经过相当严厉的critiquein2004最后一篇论文是2009并浏览它,seemsprettycomplete.尽管大多数问题都已解决,2004年提出的担忧是否是拒绝它的依据?boost中甚至没有实现它(尽管今年早些时候的邮件列表中有一些discussion)。 最佳答案 C++11的时间非常匆忙。他们真的不能四处走走,包括所有出现的旧东西。在2009年,很明显已经很晚了,他们根本就没有考虑过。然而,N3407表示(

c++ - 当可移植性很重要时,使用 C++ 0x/TR1 是否安全?

C++03缺少一些我喜欢使用的东西:std::shared_ptr、std::function和std::bind。我们不能完全切换到C++11,因为该项目需要使用较旧的libstdc++版本。我知道Boost中也有这个东西,但由于其他原因我们不能使用它。因此我们开始使用C++0x/TR1,我们目前使用的所有编译器版本都支持它。但是我们遇到了一些麻烦:很少有关于TR1是在哪个版本的Clang/MSVC/GCC中实现的信息我无法弄清楚-std=c++0x开关在Clang中的作用,没有它也能正常编译我不确定要使用什么namespace,例如std::tr1::shared_ptr与std:

c++ - 有符号和无符号整数表达式与 0x80000000 之间的比较

我有以下代码:#includeusingnamespacestd;intmain(){inta=0x80000000;if(a==0x80000000)a=42;cout输出是HelloWorld!::42所以比较有效。但是编译器告诉我g++-c-pipe-g-Wall-W-fPIE-I../untitled-I.-I../bin/Qt/5.4/gcc_64/mkspecs/linux-g++-omain.o../untitled/main.cpp../untitled/main.cpp:Infunction'intmain()':../untitled/main.cpp:8:13:w

c++ - 如何在 Redhat Enterprise 上安装 C++11 C++0x 头文件

我将我的应用程序移动到另一个Linux机器上,编译后,它返回一个错误提示#include无法解决。我猜新的GNUC++11头文件/库没有安装在新机器上。我的问题是如何安装它们?我在RedhatEnterprise上运行,所以yuminstall?谢谢。 最佳答案 RedHatDeveloperToolset提供C++11支持。(事实上,我怀疑这是它存在的主要原因。) 关于c++-如何在RedhatEnterprise上安装C++11C++0x头文件,我们在StackOverflow上找到

c++ - `#include <iostream>` 和 `-std=c++0x` 坏了

如果我指定-std=c++0x到g++,那么我不能#include.我收到以下错误消息(mingw下的g++4.4.0):Infileincludedfromc:\qt\2010.05\mingw\bin\../lib/gcc/mingw32/4.4.0/include/c++/bits/postypes.h:42,fromc:\qt\2010.05\mingw\bin\../lib/gcc/mingw32/4.4.0/include/c++/iosfwd:42,fromc:\qt\2010.05\mingw\bin\../lib/gcc/mingw32/4.4.0/include/c

c++ - C++0x 草案 : n3290 中的一点

N3290ISO标准草案§3.4.1/12中的一点:Duringthelookupofanameusedintheconstant-expressionofanenumerator-definition,previouslydeclaredenumeratorsoftheenumerationarevisibleandhidethenamesofentitiesdeclaredintheblock,class,ornamespacescopescontainingtheenum-specifier.这是添加的新点,任何人都可以用一个例子(就例子而言)解释这个点吗?

c++ - 在 C++0x 中模拟 finally block

灵感来自theothertopic,我写了这段代码来模拟finallyblock:#include#includestructbase{virtual~base(){}};templatestructexec:base{TLambdalambda;exec(TLambdal):lambda(l){}~exec(){lambda();}};classlambda{base*pbase;public:templatelambda(TLambdal):pbase(newexec(l)){}~lambda(){deletepbase;}};classA{inta;public:voidstar

c++ - 在 C 和 C++ 中为 NULL/false 大于 0x0/0b0/'\0'/0

这个问题在这里已经有了答案:WhatisthedifferencebetweenNULL,'\0'and0?(11个答案)关闭9年前。如问题中所述,我一直在将NULL和false(在C++中)与0或0x0等互换使用。我很好奇,除了作为0的同义词之外,它们是否具有任何特殊含义。

C++0x random_device 'std::runtime_error'

我是C++初学者,我对C++0x随机数生成器有疑问。我想使用Mersennetwister引擎来生成随机int64_t数字,并且我使用我之前找到的一些信息编写了一个函数:#include#includeint64_tMyRandomClass::generateInt64_t(int64_tminValue,int64_tmaxValue){std::random_devicerd;std::default_random_enginee(rd());unsignedchararr[8];for(unsignedinti=0;i(arr[0])|static_cast(arr[1])(a