相关疑难解决方法(0)

在java中重复String的简单方法

我正在寻找一个简单的公共方法或运算符,它允许我重复一些字符串n次.我知道我可以使用for循环来编写它,但我希望在必要时避免使用循环,并且某处应该存在一个简单的直接方法.

String str = "abc";
String repeated = str.repeat(3);

repeated.equals("abcabcabc");
Run Code Online (Sandbox Code Playgroud)

相关:

repeat string javascript 通过重复给定次数的另一个字符串来创建NSString

编辑

当他们不是完全必要的时候我试着避免循环,因为:

  1. 即使它们隐藏在另一个函数中,它们也会增加代码行数.

  2. 读我的代码的人必须弄清楚我在循环中做了什么.即使它被评论并且具有有意义的变量名称,它们仍然必须确保它没有做任何"聪明"的事情.

  3. 程序员喜欢把聪明的东西放在for循环中,即使我把它写成"只做它想要做的事情",这并不排除有人出现并增加一些额外的聪明"修复".

  4. 他们经常容易出错.对于涉及索引的循环,往往会产生一个错误.

  5. For循环经常重用相同的变量,增加了很难找到范围错误的机会.

  6. For循环增加了bug猎人必须看的地方数量.

java string

543
推荐指数
18
解决办法
45万
查看次数

是否在C++跨平台应用程序中实现本地化文本的实践?

在当前的C++标准(C++ 03)中,关于文本本地化的规范太少,这使得C++开发人员在使用本地化文本时比以往更加艰难(当然,C++ 0x标准稍后会有所帮助).

假设以下场景(来自真正的PC-Mac游戏开发案例):

  1. 响应(实时)应用程序:应用程序必须将非响应时间最小化为"不明显",因此执行速度很重要.
  2. 本地化文本:显示的文本本地化为两种以上的语言,可能更多 - 不要指望固定数量的语言,应该易于扩展.
  3. 在运行时定义的语言:文本不应该在应用程序中编译(每种语言也没有一个应用程序),你在应用程序启动时获得所选的语言信息 - 这意味着某种文本加载.
  4. 跨平台:应用程序采用跨平台编码(Windows - Linux/Ubuntu - Mac/OSX),因此本地化文本系统也必须是跨平台的.
  5. 独立应用程序:应用程序提供运行它所需的所有内容; 它不会使用任何环境库或要求用户安装除操作系统之外的任何东西(例如大多数游戏).

在这种应用程序中,用C++管理本地化文本的最佳实践是什么?

去年我研究了这个,我唯一确定的是你应该使用std::wstringstd::basic_string<ABigEnoughType>操纵应用程序中的文本.我停止了我的研究,因为我的工作更多的"文本显示"的问题(在实时3D的情况下),但我想有管理的纯粹的C本地化的文本++不仅仅是这一点,"使用Unicode"的一些最佳做法.

所以,欢迎所有最佳实践,建议和信息(跨平台让我觉得很难)!

c++ localization

24
推荐指数
3
解决办法
1万
查看次数

标签 统计

c++ ×1

java ×1

localization ×1

string ×1