问题列表 - 第19159页

在C++下处理Unicode字符串的最佳多平台方式是什么?

我知道已经有StackOverflow上有关的几个问题std::stringstd::wstring或类似,但没有人提出了一个完整的解决方案.

为了获得一个好的答案,我应该定义要求:

  • 多平台使用,必须适用于Windows,OS X和Linux
  • 最小的努力用于转换到/从平台特定的Unicode字符串CFStringRef,wchar_t *,char*为UTF-8或其他类型的,因为它们是由OS API必需的.备注:我不需要代码页转换支持,因为我希望在所有支持的操作系统上只使用Unicode兼容的函数.
  • 如果需要一个外部库,这个应该是开源的,并且在非常自由的许可下,如BSD但不是LGPL.
  • 能够使用printf格式语法或类似.
  • 简单的字符串分配/释放方式
  • 性能不是很重要,因为我假设Unicode字符串仅用于应用程序UI.
  • 一些例子可能会受到赞赏

我非常感谢每个答案提出一个解决方案,通过这样做,人们可以投票选择他们喜欢的替代方案.如果您有多个替代方案,请添加另一个答案.

请说明一些对你有用的东西.

相关问题:

c++ string unicode multiplatform wstring

19
推荐指数
2
解决办法
1785
查看次数

如何以编程方式生成多个Perl文件句柄?

Perl有没有办法以编程方式生成文件句柄?

我想同时打开十个文件并使用包含(CONST NAME + NUMBER)的文件句柄写入它们.例如:

 print const_name4  "data.."; #Then print the datat to file #4
Run Code Online (Sandbox Code Playgroud)

perl filehandle

3
推荐指数
2
解决办法
619
查看次数

什么是部署描述符,在使用Netbeans时我真的需要关心它吗?

实际上,什么是部署描述符?

在使用Netbeans时我真的需要关心它,因为我读了一些它是可选的.并且您可以使用注释而不是在xml文件中进行配置?

有人可以给我这个全貌吗?

java netbeans

5
推荐指数
1
解决办法
8552
查看次数

元组关系演算

安全的元组关系演算是一种完整的语言吗?

turing-complete tuple-relational-calculus

7
推荐指数
1
解决办法
1991
查看次数

Flex4列出项目双击事件

我正在使用flex4中的自定义List组件.我已经创建了一个自定义的ItemRenderer,一切看起来都像我想要的那样,但我正试图获得双击事件.我正在接收按键和所有其他事件,但不是这个.我已启用双击List组件

 doubleClickEnabled="true"
Run Code Online (Sandbox Code Playgroud)

我添加了一个事件监听器

ListEvent.ITEM_DOUBLE_CLICK
Run Code Online (Sandbox Code Playgroud)

只要我愿意,我可以点击,事件就不会被触发.我可以使用任何建议.谢谢.

apache-flex events list actionscript-3 flex4

2
推荐指数
1
解决办法
6084
查看次数

我需要一些关于扩展std :: string的C++大师的意见

我一直想在STL的字符串中获得更多功能.由于子类化STL类型是不是没有,大多数情况下我已经看到推荐的扩展这些类的方法只是编写将类型作为第一个参数的函数(而不是成员函数).

我从来没有对这个解决方案感到激动.首先,在代码中所有这些方法都不一定明显,另一方面,我只是不喜欢语法.我想用.当我打电话的方法!

前一段时间我想出了以下内容:

class StringBox
{
public:
   StringBox( std::string& storage ) :
       _storage( storage )
   {
   }

   // Methods I wish std::string had...
   void Format(); 
   void Split();
   double ToDouble(); 
   void Join(); // etc...

private:
  StringBox();

  std::string& _storage;
};
Run Code Online (Sandbox Code Playgroud)

请注意,StringBox需要引用std :: string来构造...这对它的使用提出了一些有趣的限制(我希望,这意味着它不会导致字符串类扩散问题)...在我自己的代码中,我几乎总是在一个方法中将它声明在堆栈中,只是为了修改一个std :: string.

用例可能如下所示:

string OperateOnString( float num, string a, string b )
{
    string nameS;
    StringBox name( nameS );

    name.Format( "%f-%s-%s", num, a.c_str(), b.c_str() );

    return nameS;
}
Run Code Online (Sandbox Code Playgroud)

我的问题是:StackOverflow社区的C++专家对STL扩展的这种方法有何看法?

c++ stl subclass

7
推荐指数
2
解决办法
4453
查看次数

c#RTB - 粘贴没有颜色/字体的纯文本?

我在C#应用程序中使用Rich Text对象.我遇到的唯一问题是,当用户从另一个应用程序粘贴格式化文本时,它仍然是我不能拥有的格式.有没有办法如何只粘贴字符串并忽略格式?谢谢!

c# richtextbox winforms

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

句子之间的语义相似度

我正在做project.i需要任何开源工具或技术来找到句子之间的语义相似性,我把输入作为两个句子输出作为分数(即语义相似性).任何人都知道这个信息.我希望我会得到答复很快.谢谢大家.

java nlp

7
推荐指数
2
解决办法
1万
查看次数

学习Rails:创建指向路径的链接,仅包含嵌套范围内的文本

对于我的生活,我无法弄清楚(或找到正确的搜索文本)如何创建如下所示的链接:

<a href="/publisher" class="button first"><span>This text will be hidden</span></a>
Run Code Online (Sandbox Code Playgroud)

link_toAPI中有一个类似的例子,但它并不能满足我的需求.我不希望我的锚标记有任何文本(所有文本将驻留在嵌套中span),我想链接到一个名为的路由publisher_root.

我已经厌倦了对此表示不满,所以任何帮助都会非常感激.

更新:正如我在下面的评论中提到的,HAML也在这里发挥作用.我最初消除了它,因为它似乎只是一个额外的复杂性.但是,由于它似乎是问题的症结所在,我已经添加了标签,这是我的代码:

#masthead.container
  %h1
    != image_tag( 'home-masthead.png' )
  %p
    - link_to publisher_root, :class => 'button first' do
      %span Link Text
Run Code Online (Sandbox Code Playgroud)

haml ruby-on-rails

2
推荐指数
1
解决办法
2290
查看次数

我可以将反向迭代器转换为正向迭代器吗?

我有一个叫做的类Action,它实际上是一个围绕Move对象deque的包装器.

因为我需要遍历Moves前向和后向的双端队列,所以我有一个前向迭代器和一个reverse_iterator作为类的成员变量.这样做的原因是因为当我前往或后退时,我需要知道何时离开了双端队的"终点".

这个类看起来像这样:

class Action
{
public:
    SetMoves(std::deque<Move> & dmoves) { _moves = dmoves; }
    void Advance();
    bool Finished() 
    {
        if( bForward )
            return (currentfwd==_moves.end());
        else
            return (currentbck==_moves.rend());
    }
private:
    std::deque<Move> _moves;
    std::deque<Move>::const_iterator currentfwd;
    std::deque<Move>::const_reverse_iterator currentbck;
    bool bForward;
};
Run Code Online (Sandbox Code Playgroud)

Advance功能如下:

void Action::Advance
{
    if( bForward)
        currentfwd++;
    else
        currentbck++;
}
Run Code Online (Sandbox Code Playgroud)

我的问题是,我希望能够检索当前Move对象的迭代器,而无需查询我是向前还是向后.这意味着一个函数返回一种类型的迭代器,但我有两种类型.

我应该忘记返回一个迭代器,并返回一个Move对象的const引用 吗?

最好的祝愿,

BeeBand

c++ iterator

46
推荐指数
3
解决办法
5万
查看次数