What happens when you attempt to compile and run the following code?
#include
#include
#include
#include
#include
using namespace std;
template
public:
B(T v):val(v){}
T getV() const {return val;} };
template
out;}
template
ostream & out;
Out(ostream & o): out(o){}
void operator() (const T & val ) { out<
string tolower(const string & s) {
string tmp(s);
for(unsigned i = 0; i< tmp.size(); ++i){
tmp[i] = tolower(tmp[i]); }
return tmp; }
bool Less(const B
return tolower(a.getV())
int main() {
string t[]={"aaa","bbb","Aaa", "Bbb","aAa","bBb","aaA","bbB"};
vector > v1; v1.assign(t, t+8);
stable_sort(v1.begin(), v1.end(), Less);
for_each(v1.begin(), v1.end(), Out >(cout));cout<
return 0;
}
Program outputs:
Currently there are no comments in this discussion, be the first to comment!