История изменений
Исправление XMs, (текущая версия) :
Да ты издеваешься:
int__ Scene1::FindTexture(std::string name)
{
for (int__ i = 0; i < CountTexture; i++)
{
if (image->Name[i] == name)
return image->number[i];
}
return -1;
}
При такой функции сразу становится понятно, что она делает. И сразу возникают вопросы:
- У картинки (image — единственное число) может быть несколько имён?
- Name (почему с заглавной буквы?) и number — массивы одного размера?
- Если да, то зачем их так разделять?
- Если нет, то как они связаны, почему у них данные, связанные с одним объектом, лежат на тех же индексах?
- CountTexture — размер этих массивов?
- Если да, то зачем его отделять от них?
- Вообще, почему бы не сделать отдельное хранилище на стандартных контейнерах вместо небезопасных сишных массивов? Казалось бы, что может быть проще:
struct TextureDescription { std::string name; int__ index; bool operator==(const std::string &oname) { return name == oname; } } std::vector<TextureDescription> textureDescs; int__ Scene1::FindTexture(std::string name) { using namespace std; auto it = find(begin(textureDescs), end(textureDescs), name) return it == end(textureDescs)? -1: it->index; }
Исправление XMs, :
Да ты издеваешься:
int__ Scene1::FindTexture(std::string name)
{
for (int__ i = 0; i < CountTexture; i++)
{
if (image->Name[i] == name)
return image->number[i];
}
return -1;
}
При такой функции сразу становится понятно, что она делает. И сразу возникают вопросы:
- У картинки (image — единственное число) может быть несколько имён?
- Name (почему с заглавной буквы?) и number — массивы одного размера?
- Если да, то зачем их так разделять?
- Если нет, то как они связаны, почему у них данные, связанные с одним объектом, лежат на тех же индексах?
- CountTexture — размер этих массивов?
- Если да, то зачем его отделять от них?
- Вообще, почему бы не сделать отдельное хранилище на стандартных контейнерах вместо небезопасных сишных массивов? Казалось бы, что может быть проще:
struct TextureDescription { std::string name; int__ index; bool operator==(const std::string &oname) { return name == oname; } } vector<TextureDescription> textureDescs; int__ Scene1::FindTexture(std::string name) { auto it = find(begin(textureDescs), end(textureDescs), name) return it == end(textureDescs)? -1: it->index; }
Исправление XMs, :
Да ты издеваешься:
int__ Scene1::FindTexture(std::string name)
{
for (int__ i = 0; i < CountTexture; i++)
{
if (image->Name[i] == name)
return image->number[i];
}
return -1;
}
При такой функции сразу становится понятно, что она делает. И сразу возникают вопросы:
- У картинки (image — единственное число) может быть несколько имён?
- Name (почему с заглавной буквы?) и number — массивы одного размера?
- Если да, то зачем их так разделять?
- Если нет, то как они связаны, почему у них данные, связанные с одним объектом, лежат на тех же индексах?
- CountTexture — размер этих массивов?
- Если да, то зачем его отделять от них?
- Вообще, почему бы не сделать отдельное хранилище на стандартных контейнерах вместо небезопасных сишных массивов? Казалось бы, что может быть проще:
struct TextureDescription { std::string name; int__ index; bool operator==(const std::string &oname) { return name == oname; } } vector<TextureDescription> textureDescs; int__ Scene1::FindTexture(std::string name) { auto it = find (begin(textureDescs), end(textureDescs), name) return it == end(textureDescs)? -1: it->index; }
Исходная версия XMs, :
Да ты издеваешься:
int__ Scene1::FindTexture(std::string name)
{
for (int__ i = 0; i < CountTexture; i++)
{
if (image->Name[i] == name)
return image->number[i];
}
return -1;
}
При такой функции сразу становится понятно, что она делает. И сразу возникают вопросы:
- У картинки (image — единственное число) может быть несколько имён?
- Name (почему с заглавной буквы?) и number — массивы одного размера?
- Если да, то зачем их так разделять?
- Если нет, то как они связаны, почему у них данные, связанные с одним объектом, лежат на тех же индексах?
- CountTexture — размер этих массивов?
- Если да, то зачем её отделять от них?
- Вообще, почему бы не сделать отдельное хранилище на стандартных контейнерах вместо небезопасных сишных массивов? Казалось бы, что может быть проще:
struct TextureDescription { std::string name; int__ index; bool operator==(const std::string &oname) { return name == oname; } vector<TextureDescription> textureDescs; int__ Scene1::FindTexture(std::string name) { auto it = find (begin(textureDescs), end(textureDescs), name) return it == end(textureDescs)? -1: it->index; }