Boost logo

Ublas :

Subject: Re: [ublas] Making explicit the conversion between unless types
From: Caio Souza (caioc2bolado_at_[hidden])
Date: 2016-06-28 17:17:19


Received

Em ter, 28 de jun de 2016 14:04, Riccardo Rossi <rrossi_at_[hidden]>
escreveu:

> This is just to be sure my previous email was received
>
> Can anyone acknowledge receipt?
>
> Riccardo
> On 24 Jun 2016 3:49 p.m., "Riccardo Rossi" <rrossi_at_[hidden]> wrote:
>
>> Dear all,
>>
>> Right now the following code
>>
>> #include <iostream>
>> #include <iostream>
>> #include <boost/numeric/ublas/matrix.hpp>
>>
>> void f(
>> const boost::numeric::ublas::bounded_matrix<double,10,1>&
>> should_be_10by1
>> )
>> {
>> }
>>
>> int main() {
>> boost::numeric::ublas::bounded_matrix<double,10,1> correct;
>> boost::numeric::ublas::bounded_matrix<double,1,10> wrong;
>> f(correct);
>> f(wrong); //how can this be compiled??? - i expect the type of wrong
>> to be ...wrong for f!!
>> }
>>
>> Does compile, effectively bypassing type safety.
>>
>> Essentially if I use a reference in defining a function it is because I
>> don t want to pass by value.
>> In this case a copy is being done...allowed by the fact that the
>> reference I pass is constant.
>>
>> Couldn't t the conversion be made explicit? That would potentially
>> uncover many bugs...
>>
>> Regards
>> Riccardo
>>
> _______________________________________________
> ublas mailing list
> ublas_at_[hidden]
> http://lists.boost.org/mailman/listinfo.cgi/ublas
> Sent to: caioc2bolado_at_[hidden]