c++-standard-library相关内容
我需要将 std :: vector 放入 std :: stack 。 这是我的方法到目前为止(我正在建立一个纸牌游戏): void CardStack :: initializeCardStack(std :: vector& p_cardVector){ m_cardStack = std :: stack(); //应该使用p_cardVec
..
C ++标准库包含方便的模板类 std :: move_iterator 。考虑到 std :: move 和 std :: forward 之间的密切关系,为什么没有等价的 std :: forward_iterator ?示例用法: 模板 auto foo(C&& amp; value) { remove_reference_t result {
..
我有一个 std :: vector weight; 包含权重列表。我不知道什么将在这个列表,直到一些阶段在运行程序。我想做 std :: discrete_distribution dist(weights.begin(),weights.end()); 但VS2013看起来没有接受迭代器范围的std :: discrete_distribution
..
我试图编译一个工作区的3个项目,支持C ++ 11。这组项目已成功使用LLVM编译器缺省值进行编译和链接。此外,c ++代码以前编译过许多编译器,包括g ++,llvm,msvc,sun,irix等,所以它是非常干净的代码。 语言方言部分的工作区构建设置有3个行项: c语言方言 c ++语言方言 c ++标准库 使用设置: c语言方言:编译器默认 c ++
..
我有一个关于如何正确使用新的C ++ 11 std :: function 变量的问题。我已经看到几个例子从搜索互联网,但他们似乎不包括我正在考虑的用例。以这个最小示例为例,其中函数 fdiff 是 numerical.hxx 中定义的有限前向差分算法的实现这不是问题,我只是想给一个上下文的原因,为什么我想要一个任意函数,并传递它。) #include #in
..
我没有标准库的特殊问题,唯一的真正的问题是,C ++库使用接口的代码与一堆头,真正的实现很大程度上取决于我的应用程序将在目标机器上找到 所以我一直在寻找带有容器,算法和iteraators的库,也许开源,有一个明确的实现,到目前为止我只找到这2 : boost库 QT库 但是这不是一个真正的C ++标准库,这意味着QT主要是一个GUI库,也提供容器和其他好东西,boost是si
..
int i = 0; std :: cout
..
我觉得我要提出一个非常基本的问题,但我在这里或Google中找不到答案。 为什么 cout.precision()( std :: ios_base :: precision())会在输出列表中间调用时影响整个流吗?我知道 std :: setprecision()应该用于在运行中改变精度, cout.precision()会破坏输出的值,它返回。但是这个机制是什么呢?是由于缓冲吗?
..
我正在将Windows库移植到Android(使用GNU标准C ++库选项,libstdc ++ - v3),并且VC和GNU库之间似乎有许多命名差异,例如: _stricmp 代替 $ b调用 strcasecmp $ b _unlink 称为 unlink _scalb 称为 scalbn _finite 被称为 isfinite _isnan isnan _itoa 和 ito
..
我知道类似问题已在此链接中得到解答帮助我修复此C ++ std :: set comparator ,但不幸的是,我面临的是完全相同的问题,我无法理解其背后的原因,因此需要一些帮助来解决它。 我使用VS2010和我的发行二进制运行正常没有任何问题,但调试二进制报告: 我的比较器如下所示: struct PathComp { bool operator()(const wch
..
此标准草案显示 initializer_list 的摘要。它没有私有构造函数。 //编译器可以调用私有构造函数。 constexpr initializer_list(const_iterator __a,size_type __l) :_M_array(__ a),_M_len(__ l){} _LIBCPP_ALWAYS_INLINE _LIBCPP_CONSTEXPR
..
我想知道为什么c ++标准要求 std :: sort 应该只使用随机访问迭代器?我没有看到这个优势,因为 std :: sort 和
..
std :: forward_list 提供 insert_after 和 erase_after 成员可能不需要实际访问 std :: forward_list 对象。因此,它们可以作为 static 成员函数实现,并且可以在没有列表对象的情况下调用 - 对于想从列表中删除自身的对象非常有用,这是非常常见的用法。 EDIT :此优化仅适用于 std :: allocator 上的 forward
..
C ++ 2011标准库的nextafter和nexttoward函数之间有什么区别? 解决方案 从C,它们不能被重载,这意味着两个不同的名称为相同但具有不同的参数(类型)的函数。以下是原始签名: float nextafter(float,float); float nexttoward(float,long double); 现在标准只是说应该有一些重载,
..
我试图使用C ++标准库的 find 算法,如下所示: code> template const unsigned int AdjacencyList :: _ index_for_node( const std :: vector
..
我有一个类字段是一个std :: vector。我知道我想要这个向量包含多少元素:N.如何用N个元素初始化向量? 解决方案 code> std :: vector 有一个构造函数声明为: ,const T& x = T()); 您可以使用它来构建 std :: vector 包含 x 的副本。 x 的默认值是初始化为 T 的值(如果 T 是一个具有默认构造函数的
..
我已经建立并安装(在〜/ alt 前缀)LLVM-Clang中继(2012年3月23日)在Ubuntu 12.04上成功使用GCC-4.6 libc ++使用这个Clang-build。当我想使用它,我必须提供 -lc ++ 和 -libstdc ++ 如下 / home / per / alt / bin / clang -x c ++ -I / home / per / alt / i
..
在 N3421 - 使操作符更大 ,std函数对象的新特化是: 模板 { template auto operator()(T& t,U&& u)const - > decltype(std :: forward(t)+ std :: forward U(u)); }; 而不是
..
我有一个类字段是一个std :: vector。我知道我想要这个向量包含多少元素:N.如何用N个元素初始化向量? 解决方案 code> std :: vector 有一个构造函数声明为: ,const T& x = T()); 您可以使用它来构建 std :: vector 包含 x 的副本。 x 的默认值是初始化为 T 的值(如果 T 是一个具有默认构造函数的
..
我有一个类字段是一个std :: vector。我知道我想要这个向量包含多少元素:N.如何用N个元素初始化向量? 解决方案 code> std :: vector 有一个构造函数声明为: ,const T& x = T()); 您可以使用它来构建 std :: vector 包含 x 的副本。 x 的默认值是初始化为 T 的值(如果 T 是一个具有默认构造函数的
..