[Qt-creator] Use #pragma once as default instead of header guards
Tobias.Hunger at theqtcompany.com
Wed Jan 13 13:54:22 CET 2016
On Mi, 2016-01-13 at 12:15 +0000, Bubke Marco wrote:
> We support it but it will be slow. It is your decision. Anyway how often do
> you need code completion in the header file.
I agree with Christian that we should not change the coding standard to work
around problems in the code model.
> Maybe we can fix it in the future but it depends on Clang.
> Anyway I don't want to force you to anything. It was about the future. So
> #pragma once would be allowed for the people who want to use it.
No. A coding standard is supposed to help developers work with code in their
project that they are not familiar with by writing down a basic set of rules
that provide a base-line of consistency. This is only possible when everybody
follows the same set of rules. That is why we need a broad consensus on coding
style rules, with "do whatever you want" being an option only for rules that the
community is split on.
I do not think #pragma once is such an item:
* According to Marco #pragma once is supported by all compilers we support with
* It is less to type
* It removes the need to come up with a long name that is unique in the project
* It prevents unexpected results when that name is not as unique as you thought
* It prevents unexpected results when you mistype that long name once in the
#define or #ifndef lines.
So I am in favor changing the coding style to ask developers to use #pragma once
in all new headers.
I think it will most likely even make sense to update existing headers in one
patch and be done with this change.
Tobias Hunger, Senior Software Engineer | The Qt Company
The Qt Company GmbH, Rudower Chaussee 13, D-12489 Berlin
Geschäftsführer: Mika Pälsi, Juha Varelius, Tuula Haataja Sitz der Gesellschaft:
Berlin, Registergericht: Amtsgericht Charlottenburg, HRB 144331 B
More information about the Qt-creator