【发布时间】:2015-08-27 15:38:22
【问题描述】:
我正在使用一个使用 WxWidgets 构建辅助应用程序的应用程序。我怀疑字符串大小有限制,但我无法证明/确定这一点。大多数文档都说要改用 std::string ,但如果需要,我没有时间重写整个应用程序,所以我只是想找出是否有一种简单的方法来确定(以及可能的放大,或找到替代)大小。
仅供参考,用 C 编写的应用程序,wxWidget 版本目前未知,但希望是最新的。
任何帮助表示赞赏。
【问题讨论】:
我正在使用一个使用 WxWidgets 构建辅助应用程序的应用程序。我怀疑字符串大小有限制,但我无法证明/确定这一点。大多数文档都说要改用 std::string ,但如果需要,我没有时间重写整个应用程序,所以我只是想找出是否有一种简单的方法来确定(以及可能的放大,或找到替代)大小。
仅供参考,用 C 编写的应用程序,wxWidget 版本目前未知,但希望是最新的。
任何帮助表示赞赏。
【问题讨论】:
我没有查看所有细节,但快速浏览源代码(版本 3.0.2)表明wxString 的实现与许多 C++ strings 的实现非常相似,使用动态缓冲区来存储内容。因此,理论大小仅受size_t 变量可以达到的最大值的限制(通常在 32 位架构上为 4 GB,在 64 位上更多),这与std::string 的限制完全相同有。
【讨论】: