【问题标题】:Can we merge QT, boost and other libraries in one program我们可以在一个程序中合并 QT、boost 和其他库吗
【发布时间】:2014-02-12 00:09:26
【问题描述】:

这是一个来自初学者的幼稚问题。

我需要实现 GUI + 从 .bin 文件和来自 FPGA 的数据制作图像,因此我认为我需要使用 QT 和 boost 以及其他相关库(第 3 方)。但我现在不确定是哪一个。

现在我的问题是,如果我使用 Visual Studio C++ 将它们添加到一个程序中,是否会影响执行速度或其他方面的性能...

会不会有副作用?

【问题讨论】:

  • 程序中的一切都会影响执行速度或其他方面。问题是它是否会以不可预见的方式影响他们。

标签: qt boost


【解决方案1】:

您可以毫无问题地使用 Qt、Boost、3rd 方库、STL 等。通过使用来自不同来源的不同库,您不会对性能产生影响,但是如果您使用 Qt,您会发现它与 boost 所做的很多重复,因此您最好选择其中一个,除非您需要一些非常具体的 Boost 库。

【讨论】:

    【解决方案2】:

    对于大多数程序,您首先需要关注您能否正确解决问题。一旦有了解决方案,您就可以评估该解决方案是否满足您的性能预期。总有一些事情可以进行调整以提高性能。

    作为一般规则,我认为您将看到大多数明显的性能问题将是您自己的编码限制的直接结果,而不是所提到的库中的某些固有的缓慢。我见过的事情包括在 UI 线程上做太多工作、对大型集合进行低效循环、在循环中创建对象以及处理过多信息的数据库查询。

    记住 Donald Knuth 关于优化的说法:

    “我们应该忘记小的效率,比如大约 97% 的时间:过早的优化是万恶之源”

    在您的情况下,由于听起来您以前从未解决过此类问题,因此您应该将大部分精力都花在寻找解决方案上。 1.0 版本是关于解决问题的。 2.0 版可用于提供更好的体验。

    【讨论】:

      猜你喜欢
      • 2020-10-05
      • 1970-01-01
      • 1970-01-01
      • 2019-09-01
      • 2013-03-04
      • 1970-01-01
      • 1970-01-01
      • 2017-06-20
      • 1970-01-01
      相关资源
      最近更新 更多