C#之方法传递结构和类之间的区别学习案例

转载 2016年08月30日 16:23:09
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace struct_test
{
    class Program
    {
        class theClass
        {
            public string willIChange;
        }
        //theStruct结构声明
        struct theStruct
        {
            public string willIChange;
        }
        class TestClass_Struct
        {
            static void ClassTaker(theClass c)
            {
                c.willIChange = "旧金山";
            }
            static void StructTaker(theStruct s)
            {
                s.willIChange = "纽约";
            }
            static void Main()
            {
                theClass testClass = new theClass();   //实例化一个类
                theStruct testStruct = new theStruct();//实例化一个结构
                testClass.willIChange = "北京";          //赋值
                testStruct.willIChange = "上海";
                Console.WriteLine("传递类实例之前的内容等于={0}",testClass.willIChange);
                Console.WriteLine("传递结构实例之前的内容等于={0}",testStruct.willIChange);
                Console.WriteLine();
                ClassTaker(testClass);
                StructTaker(testStruct);
                Console.WriteLine("传递类实例之后内容等于={0}",testClass.willIChange);
                Console.WriteLine("传递结构实例之后内容等于={0}",testClass.willIChange);
                //本实例的输出表明,当向ClassTaker方法传递类实例是,只更改类字段的值。但是想StructTaker方法
                //传递结构实例并不更改结构字段。这是因为向StructTaker方法传递的是结构的副本,而向ClassTaker
                //方法传递的是对类的引用。
            }
        }
    }
}

C#中变量与对象、类型与类之间的区别

如果有一个类,则在变量声明语句中可以将这个类用作类型,而对象是一种变量,针对用户自己定义的类,广义上的变量针对系统提供的数据类型。...
  • u013180863
  • u013180863
  • 2015-08-05 14:48:09
  • 1249

C#不同类间通过事件传递参数

C#中不同类之间传递参数的方法有许多,这里介绍其中一种方法,通过事件传递参数:    定义两个类ClassA和ClassB,要通过事件将ClassA中成员class_A,传递到ClassB,同时Cla...
  • HolaMirai
  • HolaMirai
  • 2015-06-16 22:13:18
  • 1589

c# 中引用对象如何创建副本

c#中的类的实例都是引用类型,用简单的赋值运算符“=”无法创建它的副本,比如: classa  a=new classa(); classa b=a; a和b指向的是同一块内存。所以...
  • kikaylee
  • kikaylee
  • 2014-03-13 14:05:42
  • 2718

C++ 面向对象(三)—— 类之间的关系

友元函数(Friend functions) 在前面的章节中我们已经看到了对class的不同成员存在3个层次的内部保护:public, protected 和 private。在成员为 protec...
  • zqixiao_09
  • zqixiao_09
  • 2016-05-22 12:39:54
  • 2836

类与类之间的关系

类与类之间的关系1.is a (继承关系,实现关系) •继承: 1. class A{}; 2. class B extends A{}•实现: 1.interface IC{} 2. ...
  • hanchendong
  • hanchendong
  • 2016-05-01 21:01:37
  • 158

基于c# 类、接口、结构的联系与区别详解

原文地址:点击打开链接 本篇文章是对c#中类与接口以及结构的联系与区别进行了详细的分析介绍,需要的朋友参考下 一.C#类与结构的差别 1. 值类型与引用类型 结构是值类型:值类型在堆栈...
  • qq798833488
  • qq798833488
  • 2015-06-25 23:32:11
  • 1107

关于两个类之间进行数组值的传递

       如果需要把一个类中的数组(类数组)的值传递给另一个类的数组(类数组),可以采用getter和setter方法进行值传递。具体如下:一,提供数组(类数组)值的类:在类中可以定义getter...
  • yqj520whm
  • yqj520whm
  • 2018-03-08 23:19:33
  • 37

C++中 类与类之间的关系

类A与类B有以下几种关系: neijian
  • sakawa_x
  • sakawa_x
  • 2014-07-04 02:17:39
  • 1712

C#中窗口(类)之间传值的几种方法!

作者:PeterXu  来源:Blog.CSDN  Blog: http://blog.csdn.net/peterreg/版权声明:原创作品,允许转载,转载时请务必以超链接形式标明文章原始出版、作者...
  • jiangxinyu
  • jiangxinyu
  • 2008-04-09 09:35:00
  • 3294

C#类和结构区别的总结(一)

 using System;using System.Collections.Generic;using System.Text;namespace ConsoleApplication1{    c...
  • Terry001
  • Terry001
  • 2007-08-28 00:51:00
  • 1023
收藏助手
不良信息举报
您举报文章:C#之方法传递结构和类之间的区别学习案例
举报原因:
原因补充:

(最多只允许输入30个字)