4

重複の可能性:
Platform::String はちょっと役に立たない

私は Windows 開発に不慣れで、新しい Visual C++ API に夢中になっています。最近、文字列関数が不足しているように見えます。次のような基本的な機能はありますか?

  • 部分文字列
  • strpos または類似の
  • 正規表現

私の最終的な目標は、「C:\foo\bar\baz.jpg」などのファイル パスを取得し、最も深いディレクトリを抽出することです。この例では、「bar」を探しています。

おそらくより大きな懸念事項として、Win 8 API の最新のドキュメントを見つけるのが非常に困難であることを発見しました。このような質問を探すのに最適な場所はどこですか?

4

2 に答える 2

3

substring は、標準 C++ ライブラリの一部です。

string x = "abc";
string y = x.substr(1, 2);

strpos が何をするのか完全にはわかりませんが、文字列内の文字の位置などを見つけることであると仮定すると、それも標準です。

string x = "abc";
string::size_type p = x.find('b');

正規表現は、クロス プラットフォームのブースト ライブラリ ( http://boost.org ) にあります。

于 2012-10-18T09:57:00.400 に答える
3

のような WinRT C++/CX クラスは、アプリ/コンポーネントの境界Platform::Stringでのみ使用する必要があります。アプリ/コンポーネント内では、通常の ISO C++ クラスを使用する必要があります。

std::wstringそのため、(Platform::StringUnicodeであるため)そのメソッドとBoostのヘルパーを使用して、境界で/から/へstd::wstring/から変換することができます。Platform::String

于 2012-10-18T10:41:08.203 に答える