include guards
От: reversecode google
Дата: 10.01.22 00:56
Оценка: :))
народ на реддите в +100500 раз устроил флейм по поводу include guards
link

вообщем то я не поклонник секты pragma once
но в конце прошлого года на одном из собесов чуть чуть пофлудил
а сейчас решил все таки проверить
итог
пару пет проектов


git ls-files | xargs wc -l

один проект-ик

107820 total

другой проект-ик

87018 total

тестировал под виндой на msvc последним из 19
с изначальным

#ifndef _file_hpp_
#define _file_hpp_
...
#endif


и дополненными

#ifndef _file_hpp_
#define _file_hpp_
#pragma once
...
#endif


результаты не впечатлили

первый
без pragma once — 5.48 минуты
c pragma once — 4.45 минут


второй
без pragma once — 3.41 минут
c pragma once — 3.8 минут

вообщем в пределах погрешности
я бы сказал разницы особой нет

итого
не смотря на то что писанины с pragma once меньше
нарваться на проблемы с одинаковыми файлами по разным путям — больше
останусь на старом добром ifndef
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.