- 论坛徽章:
- 0
|
class toLower
{
public:
char operator() ( char str)
{
char ch = tolower(str);
return ch;
}
};
int main()
{
string str = "abABcd";
transform(str.begin(), str.end(), str.begin(), toLower());
for (string::iterator iter=str.begin(); iter != str.end(); iter++)
cout << *iter;
return 0;
} | 这样是没问题的.
我想问为啥不能直接用库里面的tolower函数呢?
#include <iostream>
#include <string>
#include <algorithm>
#include <cctype>
using namespace std;
int main()
{
string str = "abABcd";
transform(str.begin(), str.end(), str.begin(), ::tolower());
for (string::iterator iter=str.begin(); iter != str.end(); iter++)
cout << *iter;
return 0;
}
|
|
|