私はルート名前空間を使用して次のコード行のメソッドにアクセスするC++プロジェクト (および私は完全な C++ n00b) に取り組ん::tolower
でいますが、いくつかのビルド設定を変更してエラーが発生しています。
CCString * CCBReader::toLowerCase(CCString * pString) {
std::string copy(pString->getCString());
std::transform(copy.begin(), copy.end(), copy.begin(), ::tolower);
return CCString::create(copy.c_str());
}
ビルドの変更はほとんどのプロジェクトにとって不可欠であり、これらを変更することはできません。回避策として、これにルート名前空間のプレフィックスを付けてみます。例えば:
std::transform(copy.begin(), copy.end(), copy.begin(), rootns::tolower);
これは可能ですか?もしそうなら、どのように?
あなたの多くはすでに私の理想的な解決策を不可能だと無視しており、自分のやり方で解決できるかどうかを確認するためにエラーが何であるかを尋ねているので、ここにエラーの関連部分があります:
error: '::tolower' has not been declared