Main()
からメソッドを呼び出すことができないことが間違っているかどうかわかりません。 Visual StudioまたはIでのバグがこれはコードですMain()からメソッドを呼び出す
何か間違ったことをやっている場合、私は知らない。
using System;
using System.Drawing;
using System.Security.Claims;
using Csharp_Projects.Constructs;
namespace Csharp_Projects
{
static class Program
{
static void Main(string[] args)
{
ValueTypeContainingRefType();
}
class ShapeInfo
{
public string infoString;
public ShapeInfo(string info)
{
infoString = info;
}
struct Rectangle
{
public ShapeInfo rectInfo;
public int recTop, rectleft, rectBottom, rectRight;
public Rectangle(string info, int top, int left, int Buttom, int Right)
{
rectInfo = new ShapeInfo(info);
recTop = top;
rectBottom = Buttom;
rectRight = Right;
rectleft = left;
}
public void Display()
{
Console.WriteLine("string={0},top={1},Bottom={2},"+"left={3},Right={4}",rectInfo,recTop,rectBottom,rectRight,rectleft);
}
public static void ValueTypeContainingRefType()
{
Console.WriteLine("Creating r1");
Rectangle r1 = new Rectangle("First Rec", 10, 10, 50, 50);
Console.WriteLine("Assigning r2 to r1");
Rectangle r2 = r1;
Console.WriteLine("Change Values of r2");
r2.rectInfo.infoString = "This is new info!";
r2.rectBottom = 222;
r1.Display();
r2.Display();
}
}
}
}
}
エラーメッセージは次のとおりです。
名"ValueTypeContainingRefType"は現在のコンテキストに存在しません。
ValueTypeContainingRefType
これは、アクセスしようとしているメソッドが別のクラス内にあるためです。 – Rik
あなたが呼び出しようとしているメソッドは、別のクラス内の構造体内にあり、静的でもあります。 – Clivey
コンパイラが「絶対にナンセンス」な何かをしていると思うと、99.999999 ...%の時間が間違っています。 – itsme86