Boost logo

Boost :

From: Alan Bellingham (alan_at_[hidden])
Date: 2002-07-18 03:15:01


Gennaro Prota <gennaro_prota_at_[hidden]>:

>On Tue, 16 Jul 2002 12:24:56 -0500, "William E. Kempf"
><williamkempf_at_[hidden]> wrote:
>
>>Which is an argument against using :: for Win32, since the vast majority of
>>Win32 API calls are macros.
>
>Well, many are. I haven't had the impression they are the vast
>majority though.

In general, anything that takes a char* argument (or any structure
containing a char*) exists in two forms - a FunctionA() and a
FunctionW(), with the latter being the 'unicode' (16-bit wide char)
version. There is then a macro defined that maps Function onto FunctionA
or FunctionW as appropriate.

Since those macros are of the form

  #define Function FunctionA

then prefixing with :: causes the scope specification to apply to the
result of the macro, and it doesn't cause a problem.


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk