Boost logo

Boost :

Subject: Re: [boost] [OT] std::complex warts
From: Mathias Gaunard (mathias.gaunard_at_[hidden])
Date: 2012-11-07 21:39:58


On 07/11/2012 21:27, Neal Becker wrote:
> std::complex doesn't seem to allow mixing of types in arithmetic operations.
> This is quite inconvenient for code that is generic on the base float type.
>
> For example:
>
> template<typename flt_t>
> flt_t some_function (std::complex<flt_t> z) {
> return 2. * z / 4.2 + ...
>
> }
>
> This will fail to compile when flt_t == float (but succeeds for double).
>
> casting every constant in a large computation is really not an acceptable
> option.
>
> Thoughts?

It is a good idea to follow strong typing when writing numerical code,
so this limitation is not a very serious problem.


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