87 lines
2.3 KiB
C++
87 lines
2.3 KiB
C++
#include "precompile.h"
|
|
|
|
#include <algorithm>
|
|
#include <functional>
|
|
#include "app.h"
|
|
|
|
int main(int argc, char* argv[])
|
|
{
|
|
#if 0
|
|
srand(time(nullptr));
|
|
{
|
|
struct GuildBasic
|
|
{
|
|
long long guild_id_ = 0;
|
|
int guild_lv_ = 0;
|
|
int guild_exp_ = 0;
|
|
|
|
void set_guild_id(long long guild_id)
|
|
{
|
|
guild_id_ = guild_id;
|
|
}
|
|
long long guild_id()
|
|
{
|
|
return guild_id_;
|
|
}
|
|
|
|
void set_guild_lv(int guild_lv)
|
|
{
|
|
guild_lv_ = guild_lv;
|
|
}
|
|
int guild_lv()
|
|
{
|
|
return guild_lv_;
|
|
}
|
|
|
|
void set_guild_exp(int guild_exp)
|
|
{
|
|
guild_exp_ = guild_exp;
|
|
}
|
|
int guild_exp()
|
|
{
|
|
return guild_exp_;
|
|
}
|
|
|
|
};
|
|
|
|
std::vector<GuildBasic*> rank_list;
|
|
for (int i = 0; i < 100; i++) {
|
|
GuildBasic* guild = new GuildBasic();
|
|
guild->set_guild_id(App::Instance()->NewUuid());
|
|
#if 1
|
|
guild->set_guild_lv(rand() % 1000);
|
|
guild->set_guild_exp(rand() % 1000);
|
|
#endif
|
|
rank_list.push_back(guild);
|
|
}
|
|
for (auto itr = rank_list.begin(); itr != rank_list.end(); ++itr) {
|
|
printf("%lld %d %d\n", (*itr)->guild_id(), (*itr)->guild_lv(), (*itr)->guild_exp());
|
|
}
|
|
std::sort(rank_list.begin(),
|
|
rank_list.end(),
|
|
[] (GuildBasic* a, GuildBasic* b) -> bool
|
|
{
|
|
if (a == b) {
|
|
abort();
|
|
}
|
|
if (a->guild_lv() > b->guild_lv()) {
|
|
return true;
|
|
}
|
|
if (a->guild_exp() > b->guild_exp()) {
|
|
return true;
|
|
}
|
|
if (a->guild_id() == b->guild_id()) {
|
|
abort();
|
|
}
|
|
return a->guild_id() > b->guild_id();
|
|
});
|
|
printf("ok\n");
|
|
}
|
|
#endif
|
|
int exitcode = 0;
|
|
App::Instance()->Init(argc, argv);
|
|
exitcode = App::Instance()->Run();
|
|
App::Instance()->UnInit();
|
|
return exitcode;
|
|
}
|