gpt4 book ai didi

特定长度的C++字符串

转载 作者:行者123 更新时间:2023-11-30 01:29:39 25 4
gpt4 key购买 nike

我正在尝试编写一个具有“序列号”概念的函数。它有特定的长度。我希望通过创建一个名为 SerialNumber 的新类型来简化构造函数,该类型包含 13 字节数字的概念。例如,我不希望 Product(const char* m) 或 Product(const std::string& str) 会截断值并违反直觉。它更喜欢 Product(const SerialNumber& sn) ,我总是可以指望它是正确的长度。最好的方法是什么?它应该是 char[13] 的 typedef 还是有办法用字符串类做到这一点?

最佳答案

最简单的方法是创建一个接受 std::string 的构造函数,然后在构造函数中验证长度确实为 13。如果不是,只需抛出一个异常——这就是它们存在的原因。请记住,char[13] 不能保证字符串的长度为 13 个字符,毕竟它可能是“hi”,后跟 11 个空终止符。

关于特定长度的C++字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5572559/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com