j'ai implémenté la classe Matrix telle que le suggère Stroustrup dans son
livre "le langage C++". J'ai en outre écrit la fonction membre suivante, qui
retourne la colonne iRow de la matrice :
std::valarray<double> MyMatrix::Row ( int iRow ) const;
Tout compile. Mais j'ai de gros soucis à l'exécution, lors de l'appel du
destructeur de mon valarray retourné par ma fonction MyMatrix::Row(int).
Ce que je ne comprends pas, c'est :
1) pourquoi l'ordinateur m'agresse à l'exécution alors que ça compile ?
2) pourquoi ne peut-on pas retourner un slice_array à la place d'un
valarray (dixit Stroustrup) ?
Mathématiquement, MyMatrix::Row(int) renvoie un vecteur. Comment créer une
classe MyVector compatible avec cette fonction MyMatrix::Row(int) ?
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Gabriel Dos Reis
"Boris Sargos" writes:
| Bonjour, | | j'ai implémenté la classe Matrix telle que le suggère Stroustrup dans son | livre "le langage C++". J'ai en outre écrit la fonction membre suivante, qui | retourne la colonne iRow de la matrice : | | std::valarray<double> MyMatrix::Row ( int iRow ) const; | | Tout compile. Mais j'ai de gros soucis à l'exécution, lors de l'appel du | destructeur de mon valarray retourné par ma fonction MyMatrix::Row(int). | Ce que je ne comprends pas, c'est : | | 1) pourquoi l'ordinateur m'agresse à l'exécution alors que ça compile ?
San voir ton code, je ne peux en dire plus.
| 2) pourquoi ne peut-on pas retourner un slice_array à la place d'un | valarray (dixit Stroustrup) ?
Parce que c'était une restriction inutile (erreur) de la norme. C'est corrigé mainitenant.
| Mathématiquement, MyMatrix::Row(int) renvoie un vecteur. Comment créer une | classe MyVector compatible avec cette fonction MyMatrix::Row(int) ?
Je ne comprends pas très bien cette question.
-- Gaby
"Boris Sargos" <bsargos@wanadoo.fr> writes:
| Bonjour,
|
| j'ai implémenté la classe Matrix telle que le suggère Stroustrup dans son
| livre "le langage C++". J'ai en outre écrit la fonction membre suivante, qui
| retourne la colonne iRow de la matrice :
|
| std::valarray<double> MyMatrix::Row ( int iRow ) const;
|
| Tout compile. Mais j'ai de gros soucis à l'exécution, lors de l'appel du
| destructeur de mon valarray retourné par ma fonction MyMatrix::Row(int).
| Ce que je ne comprends pas, c'est :
|
| 1) pourquoi l'ordinateur m'agresse à l'exécution alors que ça compile ?
San voir ton code, je ne peux en dire plus.
| 2) pourquoi ne peut-on pas retourner un slice_array à la place d'un
| valarray (dixit Stroustrup) ?
Parce que c'était une restriction inutile (erreur) de la norme. C'est
corrigé mainitenant.
| Mathématiquement, MyMatrix::Row(int) renvoie un vecteur. Comment créer une
| classe MyVector compatible avec cette fonction MyMatrix::Row(int) ?
| Bonjour, | | j'ai implémenté la classe Matrix telle que le suggère Stroustrup dans son | livre "le langage C++". J'ai en outre écrit la fonction membre suivante, qui | retourne la colonne iRow de la matrice : | | std::valarray<double> MyMatrix::Row ( int iRow ) const; | | Tout compile. Mais j'ai de gros soucis à l'exécution, lors de l'appel du | destructeur de mon valarray retourné par ma fonction MyMatrix::Row(int). | Ce que je ne comprends pas, c'est : | | 1) pourquoi l'ordinateur m'agresse à l'exécution alors que ça compile ?
San voir ton code, je ne peux en dire plus.
| 2) pourquoi ne peut-on pas retourner un slice_array à la place d'un | valarray (dixit Stroustrup) ?
Parce que c'était une restriction inutile (erreur) de la norme. C'est corrigé mainitenant.
| Mathématiquement, MyMatrix::Row(int) renvoie un vecteur. Comment créer une | classe MyVector compatible avec cette fonction MyMatrix::Row(int) ?