堆栈和泛型类型(锯齿状数组)

本文关键字:数组 锯齿状 泛型类型 堆栈 | 更新日期: 2023-09-27 18:22:13

  • 好的,我正在制作一个Stack whit数组。但我需要像锯齿状的数组一样在堆栈中推送数组
  • 问题:没有有效的参数

方法推送:

 public bool Push(T [] dato, int tamanio2)
    {
        if(tope==max)
        {
            Console.WriteLine("Imposible ingresar datos, la pila esta llena");
            return false;
        }
        else
        {
            Arreglo[tope] = dato[tamanio2];
            tope++;
            return true;
        }
    }

Main:

Cpila < string [] > pila = new Cpila< string[] >(10);
        string [] Nombres = new string [5] {"Carlos","Jose", "Patricio","Pedro","Andres"};
        pila.Push(Nombres,5);

堆栈和泛型类型(锯齿状数组)

我不完全理解这里的代码,但根据我对C#的了解,我可以指出的是,当您有以下代码时-Cpila < string [] > pila = new Cpila< string[] >(10);您实际上是在说Type参数T=string[]

然后是方法public bool Push(T [] dato, int tamanio2),即替换类型参数public bool Push(string[][] dato, int tamanio2)

现在,当您调用push..方法时。。就像pila.Push(Nombres,5);一样,你传递的是数字,这是string[],而不是string[][]

希望这能帮助你修复代码。。