Re: [eigen] problem with operator() in development branch |
[ Thread Index |
Date Index
| More lists.tuxfamily.org/eigen Archives
]
- To: eigen@xxxxxxxxxxxxxxxxxxx
- Subject: Re: [eigen] problem with operator() in development branch
- From: Benoit Jacob <jacob.benoit.1@xxxxxxxxx>
- Date: Wed, 26 May 2010 10:38:39 -0700
- Cc: Gael Guennebaud <gael.guennebaud@xxxxxxxxx>
- Dkim-signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:received:received:in-reply-to :references:date:message-id:subject:from:to:cc:content-type :content-transfer-encoding; bh=vT/lxvjm0CGTP0R9F9kZqt2PID5tc30wa7phhJzhV5Y=; b=eMNTkSl2BFtj4UMhsMSwC4QekkR+kfzZ775NipGI8RCTqKG4sqe5s5Hke680ZlL9Fk QH2950+dB3zPCaLzkgfQldjntPwwOwVZnjEuwAXU+67zInqCWGhDy8qf4aUb6bdKsEPN xzlUDhV33tj4jlzCE3tmViMvcs+MTaX1VBCQY=
- Domainkey-signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type:content-transfer-encoding; b=ecmJz/2Jm8yq0ahysGVPT7iMK/2QCN7cdncJ6wfSrNWMkvZRPfWCfMVhnk4xC7IpS/ BIlqlyRi/m71wU+vC6G90F4N6kU7vlzCbbqTJPvW4RC6w+BybgNJefO5HDkslI1bGsrc yt0WRBhQ87NuFephYXCUoinEPsnVWKwMHiXWk=
oh, I know about this issue.
Gael: the issue is that ProductBase doesn't allow coeff-based access.
But it inherits DenseBase. Honestly I think that it would be far
simpler if we said that by convention, and xpr inheriting DenseBase
has (usable) coeff methods. Is that OK? Do you see a big difficulty
with allowing that? If you think that's really not possible, then do
you agree that ProductBase should not inherit DenseBase anymore?
Benoit
2010/5/26 Bill Greene <w.h.greene@xxxxxxxxx>:
> I'm running with a very recent version of Eigen from the development branch.
> The following code snippet works fine with Eigen 2
>
> Eigen::MatrixXd a(1,2), b(2,1);
> a << 1, 2;
> b << 2, 3;
> double c = (a*b)(0,0);
> std::cout << "c=" << c << std::endl;
>
> but I get a compilation error with VC++ 2008 and the development branch Eigen
>
> d:\u_drive\src\eigen\dev_branch\eigen\eigen\src\core\densecoeffsbase.h(92)
> : error C2248: 'Eigen::ProductBase<Derived,Lhs,Rhs>::coeff' : cannot
> access private member declared in class
> 'Eigen::ProductBase<Derived,Lhs,Rhs>'
> 1>
>
> Thanks.
>
> Bill Greene
>
>
>