如何在Visual Studio

时间:2017-07-28 04:34:41

标签: c# visual-studio mathnet

我只是在测试是否可以将math.Net Numerics用于即将推出的线性代数课程,我遇到了麻烦。我通常使用R和Python,但我觉得要测试一下。我确实是Visual Studio的新手。出于某种原因,我在尝试测试如何编写脚本时遇到了26个错误,例如下面这个网站的第一个例子。我在NuGet包管理器中添加了math.Net Numerics 3.20.0。我也附上了我的UI的样子。任何人都知道我需要如何启动脚本。我是否需要使用课程和方法打开?enter image description here

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”。

1 个答案:

答案 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();
        }
    }
}