Статическая переменная и тип: может ли быть другой, более простой способ реализовать функцию, которая возвращает один и C++

Программы на C++. Форум разработчиков
Anonymous
Статическая переменная и тип: может ли быть другой, более простой способ реализовать функцию, которая возвращает один и

Сообщение Anonymous »

Я работал над созданием системы сущностей-компонентов самостоятельно, и в этом мне помогало множество видео на YouTube, ссылки на C++, рекомендуемые книги и т. д. Пока я реализовал функцию, возвращающую идентификаторы для конкретных компонентов (которые реализованы как структуры), я начал задаваться вопросом:
  • Как работает эта двойная статическая штука?
  • Есть ли лучший и более простой способ сделать это?
Что касается вопроса №1: я уверен, что без двойного использования static я не смогу получить нужную функцию на основе экспериментального кода ниже:

Код: Выделить всё

#include 
#include 
#include 

struct Physics_c {};
struct Render_c {};
struct Collision_c {};

using componentID = std::size_t;

const inline componentID getID() noexcept {
static componentID lastID = 0;
return lastID++;
}

template 
const inline componentID gettypeID() noexcept{
std::cout 

Подробнее здесь: [url]https://stackoverflow.com/questions/78662209/static-variable-and-type-could-there-be-another-simpler-way-to-implement-a-func[/url]

Вернуться в «C++»