首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

STL中怎么对vector<char*>进行排序

2012-03-24 
STL中如何对vectorchar*进行排序因为我要构造后缀数组,所以希望它们能够共享一个字串的内存,因而不能使

STL中如何对vector<char*>进行排序
因为我要构造后缀数组,所以希望它们能够共享一个字串的内存,因而不能使用vector <string> ,参考代码如下:

string   s( "ask   not   what   your   country   can   do   for   you,   but   what   you   can   do   for   your   country ");

vector <char*>   v;
int   size=s.size();
for(int   i=0;i <size;i++)
{
v.push_back(&s[i]);
}

//关键是这里如何排序,使用less <char*> ()不管用
sort(v.begin(),v.end(),less <char*> ());

vector <char*> ::iterator   vi;
for(vi=v.begin();vi!=v.end();vi++)
cout < <*vi < <endl;

请高人解答,不胜感激

[解决办法]
你要按照字母排序?
[解决办法]
sort(v.begin(),v.end(),less <char*> ());
==》
sort(v.begin(),v.end(),less <char> );

热点排行