[Liblas-devel] libLAS and VS2010
esteban70 at libero.it
esteban70 at libero.it
Tue Jan 11 04:56:20 EST 2011
>----Messaggio originale----
>Da: mpg at flaxen.com
>Data: 10/01/2011 23.55
>A: <liblas-devel at lists.osgeo.org>
>Ogg: Re: R: Re: [Liblas-devel] libLAS and VS2010
>
>Esteban70, can you send a simple main() that replicates this problem?
Create a MFC application using the wizard and put "#include <liblas/liblas.
hpp>" in any file you want.
I'm not saying to change std::numeric_limits<T>::min function call but to
put () around it, if it's necessary.
This was already discussed with Mateusz
http://mateusz.loskot.net/2010/01/27/illegal-token-on-right-side-of/
These are boost guidelines:
Make sure your code compiles in the presence of the min() and max() macros.
Some platform headers define min() and max() macros which cause some common C++
constructs to fail to compile. Some simple tricks can protect your code from
inappropriate macro substitution:
* If you want to call std::min() or std::max():
o If you do not require argument-dependent look-up, use (std::min)(a,
b).
o If you do require argument-dependent look-up, you should:
+ #include <boost/config.hpp>
+ Use BOOST_USING_STD_MIN(); to bring std::min() into the
current scope.
+ Use min BOOST_PREVENT_MACRO_SUBSTITUTION (a,b); to make an
argument-dependent call to min(a,b).
* If you want to call std::numeric_limits<int>::max(), use (std::
numeric_limits<int>::max)() instead.
* If you want to call a min() or max() member function, instead to doing
obj.min(), use (obj.min)().
* If you want to declare or define a function or a member function named
min or max, then you must use the BOOST_PREVENT_MACRO_SUBSTITUTION macro.
Instead of writing int min() { return 0; } you should write int min
BOOST_PREVENT_MACRO_SUBSTITUTION () { return 0; } This is true regardless if
the function is a free (namespace scope) function, a member function or a
static member function, and it applies for the function declaration as well as
for the function definition.
http://www.boost.org/development/requirements.html
Frank
More information about the Liblas-devel
mailing list