[OpenWalnut-Dev] Tipps

Mathias Goldau math at informatik.uni-leipzig.de
Tue Dec 14 12:10:46 CET 2010


Hallo,

es gibt einige Sachen die mir beim letzten PATCH (Revision: 5163ecb8b068)
aufgefallen sind, bitte berichtigt mich falls ich daneben liege:

> -    WValueSet( size_t order, size_t dimension, const std::vector< T > data, dataType inDataType )
> +    WValueSet( size_t order, size_t dimension, const boost::shared_ptr< std::vector< T > > data, dataType inDataType )

Also der resultierende Pointer ist dann zwar const, aber das was dahinter
steht leider nicht mehr! Es sollte besser:

[...] boost::shared_ptr< const std::vector< T > > data [...]

heissen, es sei denn es war so beabsichtigt, dann sollte das aber auch
vermerkt werden, IMHO! Ein anderes Beispiel:

> -        return m_data.size();
> +        return (*m_data.get()).size();

sollte besser m_data->size() heissen, ist dann auch besser lesbar. Für
operator[] finde ich auch: ( *m_data )[i] besser als ( *m_data.get() )[i]. Und

> +    boost::shared_ptr< std::vector< T > > v = boost::shared_ptr<std::vector< T > >( new std::vector< T >( s[ 0 ] * s[ 1 ] * s[ 2 ] ) );


kann man auch einfach als:

> +    boost::shared_ptr< std::vector< T > > v( new std::vector< T >( s[ 0 ] * s[ 1 ] * s[ 2 ] ) );

schreiben. Des weiteren ist oftmals die Zeilenlänge von unseren 130 Zeichen
nicht ausgenutzt, und es entsteht sowas unschönes wie:

> +            const boost::shared_ptr< std::vector< double > > v =
> +                boost::shared_ptr< std::vector< double > >(
> +                    new std::vector< double >( a, a + sizeof( a ) / sizeof( double ) ) );

was dann halt so aussehen könnte:

> +             const boost::shared_ptr< std::vector< double > > v( new std::vector< double >( a, a + sizeof( a ) / sizeof( double ) )
> +                     );

finde ich lesbarer.

Gruß Mathias

-- 
Institut für Informatik
Universität Leipzig
Johannisgasse 26, 04103 Leipzig
Phone: +493419732283


More information about the OpenWalnut-Dev mailing list