What is ** in C++?
It's a now deprecated g++ extension to the c++ language.
a <? b
is the minimum, returning the smaller of the numeric values a and b;
a >? b
is the maximum, returning the larger of the numeric values a and b.
There are also compound versions
<?=
and
>?=
that do assignment as well.
It's simply not valid C++. <
Might be less than, an open angle bracket for a template argument list, or the start of a digraph however non of those can be followed by ?
, then =
.
It's a gcc extension: C extension: <? and >? operators
Recent manuals say:
The G++ minimum and maximum operators (‘
<?
’ and ‘>?
’) and their compound forms (‘<?=
’) and ‘>?=
’) have been deprecated and are now removed from G++. Code using these operators should be modified to usestd::min
andstd::max
instead...