6
私はテンプレートにしたい機能を持っています。現時点ではstd::string
とstd::wstring
の2つの異なるバージョンがあります。テンプレートと定数文字列
関数(ストリッピング)この
template <class T, class _Tc>
std::vector<T> TokenizeArgs(const T& in) {
const T tofind = T("\"' ");
.. do stuff ..
}
T
ようなものであるのいずれかであるstd::string
又はstd::wstring
と_Tc
はchar
又はwchar_t
のいずれかです。テンプレートバージョンで動作するように定義した定数文字列を取得する際に問題が発生しています。上記のコードは、std::wstring
のコンストラクタにはchar*
の配列をとるコンストラクタがないため、std::string
では動作しますが、std::wstring
では動作しません。通常これを修正するには、定数文字列をconst T tofind = L"\"' "
と宣言しますが、その後はstd::string
とは動作しません。
私はテンプレートに関する多くの経験がないので、この問題の修正方法はわかりません。
@BЈовић他の機能が同じであるため – user1520427