1 Востаннє редагувалося Yola (20.03.2017 12:58:07)

Тема: auto для змінної-лічильники циклу

const uint32 trianglesCount = output.TrianglesPositions.size() / 3;
for (uint32 i = 0; i < trianglesCount; ++i) { ... }

тут мені довелось приводити тип, а хотілось би цього не робити. Можна в першому рядку використати auto, але тоді приводити тип потрібно у другому. Чи є альтернатива?

const auto trianglesCount = output.TrianglesPositions.size() / 3;
for (uint32 i = 0; i < (uint32)trianglesCount; ++i) { ... }

Розумію, що можна спробувати викрутитись за допомогою, але такий підхід не завжди зручний

for (auto i : ...) { ... }

Поки писав, до мені дійшло, що можна так, хоча не так читно як попередні варіанти:

const auto trianglesCount = output.TrianglesPositions.size() / 3;
for (auto i = trianglesCount - 1; i >= 0; --i) { ... }
Подякували: LoganRoss2