Я просматриваю некоторый код, относящийся к планированию с QueryPerformanceFrequency. Я не могу понять, что здесь происходит. Почему rvalue завернута в круглые скобки? LARGE_INTEGER - это структура, поэтому для инициализации потребуется {} вместо этого, но полностью путается этой строкой. QueryPerformanceFrequency возвращает также bool.Не могу понять эту строку LARGE_INTEGER
// Initialize the resolution of the timer
LARGE_INTEGER Timer::m_freq = (QueryPerformanceFrequency(&Timer::m_freq), Timer::m_freq);
Заголовок содержит таймер-структуру с собственным членом:
static LARGE_INTEGER m_freq;
Это оператор запятой. Это также плохо подвергается насилию. –
Ничего себе. Инициализация переменной, которая будет равна самой себе. Интересно, это даже законно? –
Обычный совет о методах кодирования iffy заключается в том, чтобы обращаться с тем, кому когда-нибудь понадобится поддерживать свой код в качестве убийственного маньяка, который знает, где вы живете. Ясно, что проблема здесь в том, что у вас нет адреса. Мы тоже не знаем. –