This is the mail archive of the gcc-help@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: with -std=c++0x typeof is gone


On 28 January 2010 01:31, Patrick Horgan <phorgan1@yahoo.com> wrote:
> In a templated class we define our difference type like this:
>
> Â Â Â typedef typeof(T() - T()) differenceType;
>

That works?  Wouldn't it give unsigned when T is unsigned?

> How simple, how elegant, but typeof is not part of the C++ standard, and
> isn't available when we use -std=c++0x. ÂOther than using specializations
> for each type that we might use with this class, is there some other
> equivalently simple way to do this?
>

I assume that decltype can do it.

http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2006/n2115.pdf

~ Scott


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]