我只是在测试是否可以将math.Net Numerics用于即将推出的线性代数课程,我遇到了麻烦。我通常使用R和Python,但我觉得要测试一下。我确实是Visual Studio的新手。出于某种原因,我在尝试测试如何编写脚本时遇到了26个错误,例如下面这个网站的第一个例子。我在NuGet包管理器中添加了math.Net Numerics 3.20.0。我也附上了我的UI的样子。任何人都知道我需要如何启动脚本。我是否需要使用课程和方法打开?
https://numerics.mathdotnet.com/#Using-Math-NET-Numerics-with-C
以下是代码:
using MathNet.Numerics.LinearAlgebra;
using MathNet.Numerics.LinearAlgebra.Double;
Matrix<double> A = DenseMatrix.OfArray(new double[,] {
{1,1,1,1},
{1,2,3,4},
{4,3,2,1}});
Vector<double>[] nullspace = A.Kernel();
// verify: the following should be approximately (0,0,0)
(A* (2* nullspace[0] - 3* nullspace[1]))
以下是将代码复制并粘贴到VS中的新项目时的错误。
错误CS8124元组必须包含至少两个元素。
错误CS1026)预期
错误CS1031预期类型
错误CS8124元组必须包含至少两个元素
错误CS1026)预期
错误CS1022类型或命名空间定义,或预期的文件结束
错误CS1031预期类型
错误CS0650错误的数组声明符:要声明托管数组,等级说明符在变量的标识符之前。要声明固定大小的缓冲区字段,请在字段类型之前使用fixed关键字。
错误CS0270无法在变量声明中指定数组大小(尝试使用'new'表达式初始化)
错误CS1002;预期
错误CS1022类型或命名空间定义,或预期的文件结束
错误CS1031预期类型
错误CS0650错误的数组声明符:要声明托管数组,等级说明符在变量的标识符之前。要声明固定大小的缓冲区字段,请在字段类型之前使用fixed关键字
错误CS0270无法在变量声明中指定数组大小(尝试使用'new'表达式初始化)
错误CS1002;预计
错误CS1022类型或命名空间定义,或预期的文件结束
错误CS0116命名空间不能直接包含字段或方法等成员
错误CS0116命名空间不能直接包含字段或方法等成员
错误CS0214指针和固定大小的缓冲区只能用于不安全的上下文中
错误CS0208无法获取地址,获取大小或声明指向托管类型('?')的指针
错误CS0102类型''已包含定义
错误CS0214指针和固定大小的缓冲区只能用于不安全的情况
错误CS0208无法获取地址,获取大小或声明指向托管类型的指针('?')
错误CS0102类型''已包含定义
错误CS0103当前上下文中不存在名称“A”
错误CS0103当前上下文中不存在名称“A”。
答案 0 :(得分:1)
NVM想出来了。
using System;
using MathNet.Numerics.LinearAlgebra;
using MathNet.Numerics.LinearAlgebra.Double;
namespace check1
{
class Program
{
static void Main(string[] args)
{
Matrix<double> A = DenseMatrix.OfArray(new double[,] {
{1,1,1,1},
{1,2,3,4},
{4,3,2,1}});
Vector<double>[] nullspace = A.Kernel();
// verify: the following should be approximately (0,0,0)
Console.Write(A * (2 * nullspace[0] - 3 * nullspace[1]));
Console.Read();
}
}
}