C++ 生成单词库-C或C++;

C++ 生成单词库-C或C++;,c++,c,performance,C++,C,Performance,我需要创建一个简单的应用程序,但速度在这里非常重要。应用程序非常简单 它将通过保存到文本文件来生成所有可用的字符。用户将输入用于生成的长度,因此应用程序将使用内部带有循环的递归函数 在这件事上,C++比C +快,还是没关系? 速度非常重要,因为如果我的应用程序需要生成/保存一千万字以上的文件。这并不重要,很可能你的应用程序会受到I/O的限制,而不是CPU的限制,除非你有足够的RAM来保存内存中的所有内容 更重要的是,您要选择最好的算法,以及支持该算法的最佳数据结构 然后用你最熟悉的语言实现它。C

我需要创建一个简单的应用程序,但速度在这里非常重要。应用程序非常简单

它将通过保存到文本文件来生成所有可用的字符。用户将输入用于生成的长度,因此应用程序将使用内部带有循环的递归函数

在这件事上,C++比C +快,还是没关系?


速度非常重要,因为如果我的应用程序需要生成/保存一千万字以上的文件。

这并不重要,很可能你的应用程序会受到I/O的限制,而不是CPU的限制,除非你有足够的RAM来保存内存中的所有内容

更重要的是,您要选择最好的算法,以及支持该算法的最佳数据结构


然后用你最熟悉的语言实现它。C++的优点是在标准库中使用容器,但这是关于它的。您可以在这两种情况下编写慢代码,也可以在这两种情况下编写快代码。

这并不重要,很可能您的应用程序将受到I/O限制,而不是CPU限制,除非您有足够的RAM将所有这些都保存在内存中

更重要的是,您要选择最好的算法,以及支持该算法的最佳数据结构


然后用你最熟悉的语言实现它。C++的优点是在标准库中使用容器,但这是关于它的。你可以用这两种语言写慢代码,也可以用这两种语言写快代码。

你说的“速度非常重要”到底是什么意思?IO将是慢的部分,你可以用解释语言写,磁盘仍然会让你慢下来。因此,基本上你是说,如果速度很重要,C或C++并不重要,那么就不要使用递归。在递归的每个步骤中都要复制堆栈。C或C++不应该那么重要。使用-O3编译,无论哪种方式,它都应该是快速的。“速度”都会及时让程序工作并且没有bug(即使完整运行需要30分钟)。。。或者“速度”是指程序运行所需的时间(即使编写源代码需要3年时间),你说的“速度非常重要”到底是什么意思?IO将是缓慢的部分,你可以用解释语言编写,磁盘仍然会使你减速。因此,基本上你是说,如果速度很重要,C或C++并不重要,那就不要使用递归。在递归的每个步骤中都要复制堆栈。C或C++不应该那么重要。使用-O3编译,无论哪种方式,它都应该是快速的。“速度”都会及时让程序工作并且没有bug(即使完整运行需要30分钟)。。。或“速度”,即程序运行所需的时间(即使编写源代码需要3年)