问题标签 [c++-standard-library]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c++ - 了解 C++ 中的库函数
如果我想知道用标准 C++ 库编写的函数是如何工作的(不仅仅是 MSDN 描述)。我的意思是它如何分配、管理、释放内存并返回结果。您需要在哪里或需要知道什么才能理解这一点?
c++ - std::string 格式化,如 sprintf
我必须格式化std::string
并将sprintf
其发送到文件流中。我怎样才能做到这一点?
c++ - 寻找容器和内存池解决方案
在嵌入式程序中,我有一个屏幕对象,需要管理要显示的项目列表。初始项目列表将在屏幕加载时从一个简单的数据库中提取,并且该列表将通过“添加”和“删除”事件进行更新。此列表需要根据某些标准进行排序。我正在寻找可以帮助我完成此任务的容器类。此外,系统中没有动态内存,因此我需要一个空项目的内存池,我可以将其加载到容器中,并在完成项目后返回到空闲池。
有人知道 C++ 标准库或 Boost 中有什么合适的吗?或者也许是另一种解决方案?
c++ - 迭代时从 std::set 中删除元素
我需要检查一组并删除符合预定义标准的元素。
这是我写的测试代码:
起初,我认为在迭代时从集合中删除一个元素会使迭代器无效,并且 for 循环中的增量将具有未定义的行为。尽管如此,我执行了这个测试代码并且一切顺利,我无法解释为什么。
我的问题: 这是标准集的定义行为还是此实现特定?顺便说一句,我在 ubuntu 10.04(32 位版本)上使用 gcc 4.3.3。
谢谢!
建议的解决方案:
这是从集合中迭代和擦除元素的正确方法吗?
编辑:首选解决方案
我找到了一个对我来说似乎更优雅的解决方案,即使它完全一样。
如果 while 内有多个测试条件,则每个测试条件都必须递增迭代器。我更喜欢这段代码,因为迭代器只在一个地方递增,使代码不易出错且更具可读性。
c++ - std::string.resize() 和 std::string.length()
我对 C++ 比较陌生,但我仍在掌握 C++ 标准库。为了帮助从 C 转换,我想std::string
使用 printf 样式格式化程序格式化 a。我意识到stringstream
这是一种更类型安全的方法,但我发现自己发现 printf 样式更容易阅读和处理(至少目前是这样)。这是我的功能:
这行得通,有点。我不确定的几件事是:
- 我是否需要为空终止符腾出空间,还是没有必要?
capacity()
在这里调用正确的函数吗?我一直在想length()
会返回 0,因为字符串中的第一个字符是 a'\0'
。
偶尔在将此字符串的内容写入套接字时(使用它的c_str()
and length()
),我在接收端弹出空字节,这引起了一些悲伤,但它们似乎不一致。如果我根本不使用此功能,则不会出现空字节。
c++ - 显示一个`std::map`
很早就宣布了一张地图:
现在我正在尝试显示地图的内容:
在 '!=' 标记和 '->' 标记之前收到错误“预期的主表达式。似乎无法理解我在这里犯的错误。有什么想法吗?
c++ - Qt:Qt 类与标准 C++
大量的功能在标准 c++ 和 Qt 之间是重复的。在某些时候,这似乎是合乎逻辑的,但很多时候它看起来很愚蠢。就像我想做一门新的编程语言,学习我已经知道的东西。例如使用 QFile。
此外,如果我全部采用 Qt 方式并假设现在我想退出 Qt 框架,那么重写该代码将太乏味。OTOH 我喜欢 Qt,因为它为我提供了库,否则我将不得不像 webkit、数据库连接、dbus 等那样自己钓鱼。
你建议混合标准 C++ 还是纯 Qt 方式?
c++ - 如何在std :: map中找到每个节点的深度?
如果我构建自己的二叉树,那么我可以找到每个节点的深度。示例代码如下
但是想知道,既然 map 是一个 b-tree,是否可以为 a 写一些类似的东西std::map
?
c++ - 两个`std::map`的交集
鉴于我有两个std::map
s,说:
我想得到两张地图的交集,形式如下:
其中键是and 中的值,值是分别来自 and的 A
一B
对值。有没有使用标准库的干净方法?A
B
c++ - 是否 std::map在 C++ 中支持像结构这样的本机数据类型吗?
如何将键映射到本机数据类型,如结构?
我写了这个片段,但我无法编译它。您对如何解决它有任何想法吗?