Re: [eigen] Visual C++ 2005 - error c2783 can't deduce template argument for type T

[ Thread Index | Date Index | More lists.tuxfamily.org/eigen Archives ]


Oh.. thanks for the info... i thought i saw on the website that eigen
2 was not yet released... I"ll have to go back and check that :D

Mark

On Fri, Oct 31, 2008 at 10:33 AM, Benoît Jacob <jacob@xxxxxxxxxxxxxxx> wrote:
> Oooh I see... you're talking about Eigen 1 !!
>
> Just FYI Eigen 2 is in beta right now, and for a long time now all effort has
> been focused on it. Eigen 2 supports Visual C++. I don't remember exactly
> what was the status of Eigen 1 support with Visual C++, so this issue might
> not be the only one.
>
> Maybe you might want to switch to Eigen 2 anyway? It has many advantages over
> Eigen 1, including full Visual C++ support, although I don't know how well
> Visual C++ performs (the quality of the C++ compiler matters a lot for Eigen
> 2).
>
> Cheers,
> Benoit
>
> On Friday 31 October 2008 17:45:22 Mark B wrote:
>> Vector3d test;
>> test.isZero();
>>
>> That should reproduce the problem in Visual C++ 2005 Express Edition.
>> Here is the error:
>>
>> 1>h:\collision\eigen\vectorbase.h(579) : error C2783: 'T
>> Eigen::Util::epsilon(void)' : could not deduce template argument for
>> 'T'
>> 1>        h:\collision\eigen\util.h(79) : see declaration of
>> 'Eigen::Util::epsilon'
>> 1>        h:\collision\eigen\vectorbase.h(609) : while compiling class
>> template member function 'bool
>> Eigen::VectorBase<T,Derived>::isZero(const T &) const'
>> 1>        with
>> 1>        [
>> 1>            T=double,
>> 1>            Derived=Eigen::Vector<double,3>
>> 1>        ]
>> 1>        h:\collision\eigen\vector.h(99) : see reference to class
>> template instantiation 'Eigen::VectorBase<T,Derived>' being compiled
>> 1>        with
>> 1>        [
>> 1>            T=double,
>> 1>            Derived=Eigen::Vector<double,3>
>> 1>        ]
>> 1>        h:\collision\collmodel.h(9) : see reference to class
>> template instantiation 'Eigen::Vector<T,Size>' being compiled
>> 1>        with
>> 1>        [
>> 1>            T=double,
>> 1>            Size=3
>> 1>        ]
>>
>> On Fri, Oct 31, 2008 at 4:38 AM, Benoît Jacob <jacob@xxxxxxxxxxxxxxx> wrote:
>> > Hi,
>> >
>> > Could you paste the exact source code causing this error and compiler
>> > output?
>> >
>> > By the way, Vector3d is a typedef for Matrix<double, 3, 1>. There is no
>> > separate Vector class template, vectors are a special case of matrices..
>> >
>> > Cheers,
>> > Benoit
>> >
>> > On Friday 31 October 2008 07:25:39 Mark B wrote:
>> >> Hi. When trying to call some_vector.isZero() (when the type of
>> >> some_vector is Vector3d, which I would imagine is Vector<double, 3>) I
>> >> get the error c2783 can't deduce template argument for type T. Any
>> >> idea why? Should be an easy thing to deduce (the error output even
>> >> says for class 'vector<double, 3>' so obviously it knows the type
>> >> should be double :P) Thanks,
>> >>
>> >> Mark
>> >>
>> >> ---
>>
>> ---
>
>
>
> ---
>
>

---


Mail converted by MHonArc 2.6.19+ http://listengine.tuxfamily.org/