C++ 中模板和 STL 的缺点 [关闭]

2024-04-22

使用 STL 或模板有什么缺点吗?是否存在不适合的情况?


首先,如果它们可以帮助您解决问题,您应该使用它们。模板是 C++ 非常重要的一部分,并且多年来一直是标准的一部分。 STL 在运行时非常强大且快速,应该受到所有像样的编译器的支持,但当然也存在一些问题。

  • 如果您使用的是非常旧的编译器,则可能无法完全支持 STL。
  • STL 实现的线程安全性可能适合您的应用程序
  • 模板可能会导致编译时间变慢,并且可能导致可执行文件变大,尤其是对于较旧的编译器。
  • 编译器经常在使用模板的代码上产生难以理解的错误消息。

仅举几例,但不使用它们的缺点可能会更大。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

C++ 中模板和 STL 的缺点 [关闭] 的相关文章

  • 如何在C++、Qt、QML、Blackberry 10 Cascades Beta 3 SDK中制作图表/图形(如折线图、条形图、圆形图)等?

    我需要知道如何在 Blackberry 10 Cascades Beta 3 SDK QML Qt C 中制作图表 图表 如果有人可以向我展示一个例子或向我指出一些可以告诉我如何做到这一点的东西 我将不胜感激 您应该查看 QChart js
  • C# 中的简单获取字符串(忽略末尾的数字)

    我认为正则表达式太过杀伤力 而且它需要我一些时间来编写一些代码 我想我现在应该学习 因为我知道一些正则表达式 分隔字母数字字符串中的字符串的最简单方法是什么 它将永远是 LLLLDDDDD 我只想要字母 l 通常只有 1 或 2 个字母 T
  • 如何解决“HTTP 错误 404.3 - 未找到”错误?

    简单的问题 我启动 VS2008 并创建一个新的 WCF 服务应用程序 这将创建一个默认应用程序 并使用一些测试方法来显示它的工作原理 我按 CTRL F5 确实有效 伟大的 但是 它使用 Visual Studio 开发服务器 我不想支持
  • Windows Server / Datacenter:设置 CPU 关联性 > 64 个核心

    SetThreadAffinityMask 允许为 64 个逻辑核心 处理器 设置关联掩码 但是 Windows Datacenter 最多可以有 64 个 CPU 每个 CPU 都有多个内核 请参阅here http social tec
  • F1 2019 UDP解码

    我目前正在为 F1 方向盘开发自己的显示器 F1 2019 由codemasters提供 通过UDP发送数据 该数据存储在字节数组中 我在解码返回的数组时遇到一些问题 问题是我得到了很多信息 但我不知道如何处理它们 我将向您介绍我所尝试过的
  • Linux 缓冲区溢出环境变量

    我一直在审查不同类型的缓冲区溢出 并遇到了一个我不记得为什么会发生的问题 下面的代码是我尝试执行缓冲区溢出的程序 include
  • 如何更改 GridView 内 ListViewItemPresenter 中的 SelectedBackground

    我在 SubSection 中有一个 Clickable Gridview
  • 正确别名向量

    我无法在其他地方找到答案 所以我想我只需要问这个 我正在尝试获取向量 其中存储 int 指针 的别名 如下所示 void conversion Engine ENGINES The Engine class has a vector of
  • 如何将 list 对象附加到另一个对象

    在 C 中 我有两个list
  • EWS 消息跟踪报告

    我一直在研究如何使用 EWS 从交换中获取消息跟踪报告 但似乎无法查明任何内容 我打算构建一个抓取日志文件的应用程序 但如果我可以通过 EWS 来完成它 那对我正在做的事情会更好 有任何想法吗 我终于能够为我的问题创建一个解决方案 我在 C
  • 有没有一种方法可以在不测试整个应用程序的情况下对类库(通用 Windows)进行单元测试?

    我需要进行单元测试Class Library Universal Windows 但是从 添加新项目 窗口中 我只看到了这一点 该项目使用应用程序容器运行所有测试 它始终打开一个应用程序 由于我不需要所有这些开销 我想知道是否有一种方法可以
  • C# 中的异步方法如何工作?

    我在我的一些项目中使用异步方法 我喜欢它 因为它使我的应用程序更具可扩展性 但是 我想知道异步方法如何在后台真正工作 NET 或 Windows 如何知道调用已完成 根据我进行的异步调用的数量 我可以看到创建了新线程 但并不总是 为什么 此
  • 将 size_t 变量添加到指针

    我想向指针添加 size t 类型 有些像这样 void function size t sizeA size t sizeB void pointer pointer malloc sizeA pointer pointer sizeB
  • 委托:方法名称预期错误

    我正在尝试让以下简单的委托示例正常工作 根据我从中取出的一本书 应该没问题 但我得到了Method name expected error namespace TestConsoleApp class Program private del
  • 枚举和枚举类之间的区别[重复]

    这个问题在这里已经有答案了 谁能解释一下两者之间的区别 enum Type1 type2 And enum class Type1 type2 我经常使用前者 可能太频繁而没有足够的封装 但我从未使用过第二个例子 Thanks enum A
  • 拦截C# HttpClient GetAsync

    我有一个 Web 项目 C MVC5 但没有 WebAPI 和一个简单的 HTTP REST 客户端 该客户端调用外部 REST 服务并获取 accessToken 等 我想检查所有 Get PostAsync 调用对 statusCode
  • 为什么这是一个未定义的行为?

    我的回答这个问题 https stackoverflow com q 18706587 845092这个函数是 inline bool divisible15 unsigned int x 286331153 2 32 1 15 40086
  • 如何使用 GCC 在 C 上编译库?

    我用这些文件创建了一个库pila h and pila c 我编译文件pila c with gcc pila c c这个库运行良好 我已经测试过了 然后我又做了一个图书馆 这个库有文件pila funciones extra h and
  • GridView,在代码中添加标题行第 2 部分

    这是这篇文章的延续 但添加了完整的代码 ASP NET GridView 在代码中添加标题行 https stackoverflow com questions 19119004 asp net gridview adding header
  • 如何让c代码执行hex机器代码?

    我想要一个简单的 C 方法能够在 Linux 64 位机器上运行十六进制字节码 这是我的 C 程序 char code x48 x31 xc0 include

随机推荐

  • 从线程接收数据后pyqt主窗口不断崩溃

    我有一个 QMainWindow 启动 QThread 并等待来自网络的数据 当收到任何数据时更新 UI 问题是 它有时会崩溃 有时不会 我所做的就是启动它并等待数据 这是线程类 class ListenerThread QtCore QT
  • 将多选列表框中的 SelectedItems 与 ViewModel 中的集合同步

    我在使用 prism 的 SL3 应用程序中有一个多选列表框 并且我的视图模型中需要一个集合 其中包含列表框中当前选定的项目 视图模型对视图一无所知 因此它无法访问列表框控件 另外 我需要能够从视图模型中清除列表框中的选定项目 不知道如何解
  • 符号查找错误未定义符号,但所有符号似乎都存在

    可执行文件似乎无法解析链接库中的符号 LD DEBUG libs 的相关输出表明加载了正确的库 6557 usr lib libcharon so 0 error symbol lookup error undefined symbol a
  • 使用 ngx-mat-file-input 从 Angular 将文件上传为 multipart/form-data

    我在用着ngx mat file input 0 检索用户输入的文件 我想将其上传到服务器 端点需要一个多部分文件 我怎样才能做到这一点 0 https www npmjs com package ngx material file inp
  • 内置模块计算最小公倍数

    我目前正在使用一个接受两个数字并使用循环来查找这些数字的最小公倍数的函数 def lcm x y This function takes two integers and returns the L C M Choose the great
  • MySQL order by 在 group by 之前

    这里有很多类似的问题 但我认为没有一个能充分回答这个问题 我将从当前最流行的继续question https stackoverflow com questions 5140785 mysql order before group by如果
  • ANTLR“无法启动调试器。等待连接到远程解析器超时。”

    我在 AntlrWorks 中运行的 ANTLR 语法之一抛出 无法启动调试器 等待连接到远程解析器超时 过去 此消息通常会消失 但此消息会持续存在 在搜索 ANTLR 列表时 例如http www antlr org pipermail
  • 将 A => M[B] 转换为 M[A => B]

    对于一个单子M 是否可以转A gt M B into M A gt B 我尝试过遵循这些类型 但没有成功 这让我认为这是不可能的 但我想我还是会问 另外 搜索 Hooglea gt m b gt m a gt b 没有返回任何东西 所以我没
  • Perl:函数参数不足

    我是 Perl 的新手 目前正在尝试理解提到的错误消息 我有这段代码 仍然主要用于测试目的 usr bin perl use strict use warnings my info autor gt Karryanna jazyk gt c
  • Android ACTION_SHUTDOWN 广播不起作用

    Code public class ShutdownReceiver extends BroadcastReceiver private static final String TAG ShutdownReceiver Override p
  • Javascript“this”被事件监听器覆盖[重复]

    这个问题在这里已经有答案了 我可能做错了什么 但在尝试将一些面向对象编程应用于 Javascript 时 我发现了一些有趣的行为 考虑以下 function Bug element this focusedCell null element
  • jquery导航

    我正在为网站登陆页面创建一个简单的导航 它将用户引导到客户业务的两侧之一 基本上包括当您滚动到一侧时屏幕被分成两半 另一侧淡出 My code HTML div a href retail html Retail a a href resi
  • 使用 C# 以 PDF 形式动态存储和发送 SSRS 报告

    我在 SSRS 中有一份报告 它以 a 作为参数SalesRepCode and Email生成 PDF 收据 如果我使用报告查看器 它就会正常工作 使用 C 我想为每个存在的销售代表自动生成 PDF 一旦呈现 PDF 我想将其存储在文件夹
  • 无法在 Simulator XCode 6.0 中运行应用程序

    从 XCode 5 0 迁移到 XCode 6 0 后 项目无法运行并出现以下错误 An error was encountered while running Domain FBSOpenApplicationErrorDomain Co
  • Firebase 数据库结构 - 需要建议

    我知道这个问题可能被视为基于意见的问题 但是我认为值得讨论正确构建数据库的方法 我在 Swift 中开发 iOS 应用程序 并决定使用 firebase 作为我的后端服务 让我们从应用程序描述开始 该应用程序旨在为图书阅读体验提供跟踪和社交
  • 断言失败时如何继续执行

    我正在使用 Selenium RC 使用 Java 和 eclipse 和 TestNG 框架 我有以下代码片段 assertTrue selenium isTextPresent Please enter Email ID assertT
  • Bootstrap 工具提示可以工作但由于 z 索引而隐藏?

    如果将鼠标悬停在第一支铅笔上 您可以看到工具提示出现 但它是隐藏的 我怎样才能让所有工具提示显示在其他所有内容之上 相关代码 nav text on click null function alert heyo nav text toolt
  • 从命令行(CLASSPATH)运行 Mahout

    在Windows下使用Maven成功编译了Mahout 我正在尝试从命令行运行示例之一 但我不明白我做错了什么 看起来像是 CLASSPATH 问题 假设我想运行 GroupLensRecommenderEvaluatorRunner 示例
  • 哪些数据会发送回 Paypal“返回”网址,以及如何将我自己的数据发送到此网址?

    实施标准 Paypal 立即购买 按钮 文档不清楚什么数据被传递到 返回 url 该文档也没有提及如何通过表单发送您自己的自定义数据 任何人都可以为此提供适当的文档吗 相关代码
  • C++ 中模板和 STL 的缺点 [关闭]

    Closed 这个问题是基于意见的 help closed questions 目前不接受答案 使用 STL 或模板有什么缺点吗 是否存在不适合的情况 首先 如果它们可以帮助您解决问题 您应该使用它们 模板是 C 非常重要的一部分 并且多年