Tag: 引用

值类型Vs引用类型 – 对象类C#

如果值类型和引用类型来自作为引用类型的对象类型,那么值类型如何值类型和引用类型是引用它们都来自引用类型。

如何在C#中存储对整数的引用?

可能重复: 如何通过“引用”将其分配给c#中的类字段? 大家好 – 请告诉我如何使这项工作? 基本上,我需要一个整数引用类型(int *可以在C ++中工作) class Bar { private ref int m_ref; // This doesn’t exist public A(ref int val) { m_ref = val; } public void AddOne() { m_ref++; } } class Program { static void main() { int foo = 7; Bar b = new Bar(ref foo); b.AddOne(); Console.WriteLine(foo); // […]

C# – 引用动态生成的程序集中的类型

我试图弄清楚当你动态生成程序集时是否可能引用先前动态生成的程序集中的类型。 例如: using System; using System.CodeDom.Compiler; using System.Reflection; using Microsoft.CSharp; CodeDomProvider provider = new CSharpCodeProvider(); CompilerParameters parameters = new CompilerParameters(); parameters.GenerateInMemory = true; CompilerResults results = provider.CompileAssemblyFromSource(parameters, @” namespace Dynamic { public class A { } } “); Assembly assem = results.CompiledAssembly; CodeDomProvider provider2 = new CSharpCodeProvider(); CompilerParameters parameters2 = new CompilerParameters(); parameters2.ReferencedAssemblies.Add(assem.FullName); parameters2.GenerateInMemory = […]

跟踪C#中的所有对象引用

在Visual Studio中进行调试时,是否可以列出对象的所有引用。 我正在使用C#。 我正在寻找类似GC在垃圾收集过程中所做的事情。

非静态字段,方法或属性需要对象引用吗?

我知道这可能是一个非常新的问题,所以我道歉。 我试图从另一种formsMaxScore访问Form1上的标签的Text属性。 当我单击MaxScore上的Ok按钮时,我想通过使用max.ToString()将Form1的myGameCountLbl.Text设置为Form1的变量max。 这是我在MaxScore的OK按钮事件中的代码: private void okBtn_Click(object sender, EventArgs e) { Form1.myGameCountLbl.Text = Form1.max.ToString(); Form1.compGameCountLbl.Text = Form1.max.ToString(); } 但是当我去编译它时,我得到错误: 非静态字段,方法或属性“Towergame_2.Form1.myGameCountLbl”需要对象引用 我得到了Towergame_2.Form1.max和Towergame_2.Form1.compGameCountLbl的相同错误。 不太确定如何解决这个问题。 Max是一个公共变量,两个标签也是公共变量。 谢谢! 这是我的构造函数中的代码(谢谢lassevk的代码!): public Form1() { //initialize vars myHp = 100; compHp = 100; youWon = 0; compWon = 0; money = 100; canCompAttack = true; gameOver = false; //show HowToPlay Dialogue HowToPlay […]

两个不同的“字符串”是同一个对象实例?

代码非常自我解释。 我期望当我创建a1和b1 ,我创建了两个包含相同文本的不同字符串实例。 所以我认为a1 == b1是真的但是object.ReferenceEquals(a1,b1)会是假的,但事实并非如此。 为什么? //make two seemingly different string instances string a1 = “test”; string b1 = “test”; Console.WriteLine(object.ReferenceEquals(a1, b1)); // prints True. why? //explicitly “recreating” b2 string a2 = “test”; string b2 = “tes”; b2 += “t”; Console.WriteLine(object.ReferenceEquals(a2, b2)); // prints False //explicitly using new string constructor string a3 = new […]

C#中的值类型和引用类型有什么区别?

我知道一些差异, 值类型存储在堆栈中,其中引用类型存储在托管堆上。 值类型变量直接包含它们的值,其中引用变量仅包含对在托管堆上创建的对象的位置的引用。 我错过了还有其他的区别……如果是的话,他们是什么?

如何通过GetComponent从另一个游戏对象中的另一个脚本访问变量?

我四处寻找,我无法让它发挥作用。 我想我只是不知道正确的语法,或者只是不完全掌握上下文。 我有一个BombDrop脚本,它包含一个public int。 我使用public static工作,但有人说这是一个非常糟糕的编程习惯,我应该学习封装。 这是我写的: BombDrop脚本: public class BombDrop : MonoBehaviour { public GameObject BombPrefab; //Bombs that the player can drop public int maxBombs = 1; // Update is called once per frame void Update () { if (Input.GetKeyDown(KeyCode.Space)){ if(maxBombs > 0){ DropBomb(); //telling in console current bombs Debug.Log(“maxBombs = ” + maxBombs); […]