How about
#ifdef USE_COMPLEX_NUMBERS
// use ::real syntax
#else
#endif
I didn't try this so if that makes no sense sorry.
-J
Derek Gaston writes:
> Well... I made up a little toy code here... and got several other
> people from around the office (who are _very_ knowledgeable in C++
> lore) to come try and make it compile... with no luck. It just
> doesn't seem to be possible.
>
> I _did_ actually get it to compile with something like this:
>
> template<>
> void something<std::vector<class T> >::doSomething()
> {}
>
> But it fails to link if actually try to instantiate one of those
> things... so the code isn't getting generated correctly.
>
> At this point my advice is this: how many things is std::complex going
> to be templated on? I mean... really!?? Probably only just float,
> double, long double right? In reality, probably just double. My
> suggestion is just to do as you said earlier:
>
> template<>
> Real DistributedVector<std::complex<double> >::min () const {...}
>
> And if someone wants to use something besides double... then let them
> fill in the specialization....
>
> Derek
>
>
>
> On Jan 23, 2008 11:02 AM, Roy Stogner <[EMAIL PROTECTED]> wrote:
> >
> >
> > On Wed, 23 Jan 2008, Derek Gaston wrote:
> >
> > > 2008/1/23 Roy Stogner <[EMAIL PROTECTED]>:
> > >> template<typename T>
> > >> Real DistributedVector<std::complex<T> >::min () const {...}
> > >
> > > Have you tried:
> > >
> > > template<typename T>
> > > Real DistributedVector<template std::complex<T> >::min () const {...}
> >
> > No; I didn't even know that was valid syntax. Are you sure you don't
> > mean:
> >
> > template<typename T>
> > Real DistributedVector<typename std::complex<T> >::min () const {...}
> >
> > Adding "template" gives a bunch of "template argument 1 is invalid"
> > errors; adding "typename" gives the same "invalid use of undefined
> > type" errors.
> > ---
> > Roy
> >
>
> -------------------------------------------------------------------------
> This SF.net email is sponsored by: Microsoft
> Defy all challenges. Microsoft(R) Visual Studio 2008.
> http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
> _______________________________________________
> Libmesh-devel mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/libmesh-devel
-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2008.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
_______________________________________________
Libmesh-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/libmesh-devel