C# Print()名称与';不存在于当前环境中
c#新手需要以下错误的帮助。 在Grybai类中,打印错误,当前上下文中不存在“svoris”。印刷品(A,参考号n,Svoris);第三个参数“Svoris”给出了一个错误C# Print()名称与';不存在于当前环境中,c#,printing,syntax-error,C#,Printing,Syntax Error,c#新手需要以下错误的帮助。 在Grybai类中,打印错误,当前上下文中不存在“svoris”。印刷品(A,参考号n,Svoris);第三个参数“Svoris”给出了一个错误 using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using System.IO; namespace C { class
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.IO;
namespace C
{
class Grybai
{
public string name;
private int Svoris;
public void Tipas(string nameType, int Weight) { name = nameType; Svoris = Weight; }
public string GetName() { return name; }
public int GetWeight() { return Svoris; }
尝试使用GetWeight方法,但仍然无效
}
class Program
{
const string CFd = "..//..//Duom.txt";
const string CFr = "..//..//Rez.txt";
//Duomenu nuskaitymas is failo i masyva
static void Main(string[] args)
{
Grybai[] A = new Grybai[10]; //Sukuriam strukturu masyva
int n = 0;
Read(A, ref n);
Print(A, ref n, Svoris);
当前上下文中不存在Svoris名称,如何修复
}
static void Read(Grybai[] tarp, ref int n)
{
using (StreamReader reader = new StreamReader(CFd))
{
string line;
string[] parts;
if (File.Exists(CFr)) File.Delete(CFr);
while ((line = reader.ReadLine()) != null)
{
parts = line.Split(' ');
tarp[n] = new Grybai();
tarp[n].Tipas(parts[0], int.Parse(parts[1]));
n++;
}
}
}
static void Sort(Grybai[] tarpA, int n)
{
Grybai tarpB;
for (int j = 0; j < n; j++)
{
for (int i = 0; i < n - 1; i++)
{
if (tarpA[i].GetName()[0] > tarpA[i + 1].GetName()[0])
{
tarpB = tarpA[i];
tarpA[i] = tarpA[i + 1];
tarpA[i + 1] = tarpB;
}
}
}
}
static void Print(Grybai[] tarp, int n, int svoris)
{
string top = "|-----------------------------------------------------------|\r\n" +
"| Surusiuoti duomenys |\r\n" +
"|-----------------------------------------------------------|\r\n" +
"|Pavadinimas |Tipas |Svoris |\r\n" +
"|-----------------------------------------------------------|";
}
静态无效读取(Grybai[]tarp,参考整数n)
{
使用(StreamReader=新StreamReader(CFd))
{
弦线;
字符串[]部分;
如果(文件存在(CFr))文件删除(CFr);
而((line=reader.ReadLine())!=null)
{
零件=直线分割(“”);
tarp[n]=新Grybai();
tarp[n].Tipas(部分[0],int.Parse(部分[1]);
n++;
}
}
}
静态无效排序(Grybai[]tarpA,int n)
{
格里拜塔尔布;
对于(int j=0;jtarpA[i+1].GetName()[0])
{
tarpB=tarpA[i];
tarpA[i]=tarpA[i+1];
tarpA[i+1]=tarpB;
}
}
}
}
静态无效打印(Grybai[]防水布,内部n,内部svoris)
{
string top=“|--------------------------------------------------------------|\r\n”+
“| Surusiuoti Duomeys | \r\n”+
“|----------------------------------------------------------------|\r\n”+
“|帕瓦迪尼马斯|蒂帕斯|斯沃里斯| \r\n”+
"|-----------------------------------------------------------|";
您的“Svoris”是“Grybai”类中可访问的私有类。您不能像在“Program”类中那样访问它。为了解决“Svoris”上的参数错误,您可以替换一行代码,如下所示
Old Code : Print(A, ref n, Svoris);
New Code : Print(A, ref n, A.GetWeight());
根据您的代码,GetWeight()返回Svoris的值。它用于预期目的。
Svoris
在另一个类中。您在另一个类中声明变量Svoris
,该变量对您的第二个类不可见,Svoris
应使用Grybai[n]从主类中获取.Svoris
Old Code : Print(A, ref n, Svoris);
New Code : Print(A, ref n, A.GetWeight());