2010-04-22 5 views
0

Le programme est le suivant:La multiplication de matrices en utilisant la bibliothèque matrice modèle (MTL 4)

#include <iostream> 
#include <boost/numeric/mtl/mtl.hpp> 
using namespace mtl; 
int main(int argc, char* argv[]) 
{ 
dense_vector<double> a(5,1.0); 
dense_vector<double> b(5,2.0); 
a * trans(b); 
} 

Je veux calculer un * trans (b), mais il y a une erreur compling: C2893. Est-ce que quelqu'un va m'aider? Merci beaucoup!

+0

Il serait utile si vous fournissez le texte d'erreur complète de la fenêtre de sortie. C2893 ne dit pas grand-chose. –

Répondre

1

Le vecteur dans votre programme ci-dessus est un vecteur de colonne. Le constructeur que vous utilisez utilise deux arguments: la taille et la valeur initiale.

La raison pour laquelle vous obtenez l'erreur du compilateur est probablement ceci:

La transposition du vecteur est momentanément pas encore mis en œuvre. Il va créer une vue de vecteur de ligne sur un vecteur de colonne et vice versa.

Matrix Template Library 4: Transposed

Questions connexes