作者jgj (KK)
看板C_Sharp
标题[问题] 一个继承时的转型问题
时间Thu Jul 21 12:21:58 2005
遇到一 个问题就是我从网路上找到ㄧ个component Math.Net
可从此处下载(
http://nmath.sourceforge.net/wiki/index.php/Main_Page)
我继承他的matrix类别可是当使用operator + - *时会产生TypeCast error
原因是我将Matirx 转型成 NNMarix
有什麽方法可以解决这样的问题
如果无法从母类别转到子类别 那我的operator该如何写??
using System;
using MathNet.Numerics.LinearAlgebra;
namespace My
{
namespace Math
{
public class NNMatrix : Matrix
{
public NNMatrix(double[,] A) : base(A)
{
}
public NNMatrix(int m, int n, double s) : base(m,n,s)
{
}
public NNMatrix(int m, int n) : base(m,n)
{
}
public NNMatrix(double[] x, int m) : base(x,m)
{
}
public static NNMatrix operator +(NNMatrix X, NNMatrix Y)
{
return (NNMatrix) ((Matrix) X + (Matrix) Y);
}
public static NNMatrix operator -(NNMatrix X, NNMatrix Y)
{
return (NNMatrix) ((Matrix) X - (Matrix) Y);
}
public static NNMatrix operator *(NNMatrix X, NNMatrix Y)
{
return (NNMatrix) ((Matrix) X * (Matrix) Y);
}
}
}
}
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.109.72.145