2016-07-01 6 views
0

Ich habe einen Zeilenvektor und einen Spaltenvektor und ich möchte ihr Punktprodukt nehmen.Punktprodukt als Multiplikation in Gürteltier

rowvec v = {1,2,3,4}; 
vec w = {5,6,7,8}; 
double a = dot(v,w) // works 
double b = v*w // doesn't work 
double c = (v*w)(0) // doesn't work 
double d = static_cast<vec>(v*w)(0) //works 

Ist es möglich, etwas zu bekommen, die wie b aussieht? Ich möchte es für die Lesbarkeit.

Antwort

2

Sie können auch

double b = as_scalar(v*w); 

verwenden, aber das war nicht wirklich das, was man wollte ... es nicht, dass Sie zur Verfügung, außer der Verwendung Matte Format für v, w und b andere Alternativen gibt. Dann erhalten Sie eine [1x1] Matrix für v*w und eine [4x4] Matrix für w*v