2

私は真の多言語複数形化クラスの実装を検討しており、私が作成したインターフェイス IPlural に基づいています。

IPlural は関数pluralTypeを定義します

string pluralType(float value);

サポートしたいすべての言語について、"zero"、"one"、"two"、"few"、"many"、または "other" のいずれかであるpluralType を決定するルール セットを実装するクラス ファイルを作成する予定です。 . 関数は単純です。数値を渡すと、文字列が出力されます。

私の問題は、ユーザーの現在のCultureInfo/Languageに基づいてIPluralの実装の1つを選択したいので、大規模なswitchステートメントを持たずにこれを行うにはどうすればよいですか?

私のすべてのクラスは次のように呼ばれます:

  • Plural_en
  • Plural_pl
  • 複数の bs

ここで、最後の 2 文字は言語です (この場合、通常はロケールに依存しません)。

これらのクラスはすべて IPlural を実装しており、次のように動作するはずだと思います...

IPlural pluraliser = new "dynamically chosen pluraliser class"
string pt = pluraliser.pluralType(5);

問題は、これが可能かどうかわからないということです。

どんなポインタでも大歓迎です。

ありがとう

4

2 に答える 2