[Development] #pragma once

Mitch Curtis mitch.curtis at qt.io
Wed Jan 24 11:34:05 CET 2018



> -----Original Message-----
> From: Ville Voutilainen [mailto:ville.voutilainen at gmail.com]
> Sent: Wednesday, 24 January 2018 11:25 AM
> To: Alexander Nassian <nassian at bitshift-dynamics.com>
> Cc: Mitch Curtis <mitch.curtis at qt.io>; development at qt-project.org
> Subject: Re: [Development] #pragma once
> 
> On 24 January 2018 at 12:22, Alexander Nassian <nassian at bitshift-
> dynamics.com> wrote:
> > Maybe because it’s not part of the C++ standard?
> 
> #pragma once is not a replacement for include guards.

Why not?

> It's not part of the C++ standard because it doesn't always work

In which ways? My quick search gave me these:

https://stackoverflow.com/a/1946730/904422
https://en.wikipedia.org/wiki/Pragma_once#Caveats

There's also this answer that highly recommends against it, but seems quite contended in the comments:

https://stackoverflow.com/a/34884735/904422

> and modules are a superior solution anyway.

How so?


More information about the Development mailing list