引用类型与值类型

简介:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Demo
{
    class MyClass
    {
        public int val; // 引用类型
    }

    struct myStruct
    {
        public int val;
    }

    class Program
    {
       
        static void Main(string[] args)
        {
            MyClass objectA = new MyClass();
            MyClass objectB = objectA;
            objectA.val = 10;
            objectB.val = 20;

            myStruct structA = new myStruct();
            myStruct structB = structA;
            structA.val = 30;
            structB.val = 40;

            Console.WriteLine("objectA.val = {0}",objectA.val);
            Console.WriteLine("objectB.val = {0}", objectB.val);
            Console.WriteLine("structA.val = {0}", structA.val);
            Console.WriteLine("structB.val = {0}", structB.val);

            Console.ReadKey();
        }
    }
}

对象是引用类型,结构是值类型。

引用类型,操作同一个地址。
值类型,操作不同的地址。


本文转自TBHacker博客园博客,原文链接:http://www.cnblogs.com/jiqing9006/p/6763211.html,如需转载请自行联系原作者

相关文章
|
5月前
|
运维 安全 网络安全
等保测评全面解析
等保测评是依据国家信息安全等级保护制度,对信息系统安全保护状况进行检测评估的活动。其目标是确保信息系统在各阶段符合安全等级要求,保障系统保密性、完整性和可用性。测评涵盖技术与管理两方面:技术层面包括物理环境、网络通信、设备计算及应用数据安全;管理层面涉及制度、机构、人员及建设运维管理。测评流程分为准备、方案设计、现场测评和报告编制四个阶段。实践中需做好测评前准备、测评中配合以及测评后整改优化,以持续提升信息安全水平。
398 0
|
12月前
|
前端开发 Java 数据库连接
表白墙/留言墙 —— 中级SpringBoot项目,MyBatis技术栈MySQL数据库开发,练手项目前后端开发(带完整源码) 全方位全步骤手把手教学
本文是一份全面的表白墙/留言墙项目教程,使用SpringBoot + MyBatis技术栈和MySQL数据库开发,涵盖了项目前后端开发、数据库配置、代码实现和运行的详细步骤。
263 0
表白墙/留言墙 —— 中级SpringBoot项目,MyBatis技术栈MySQL数据库开发,练手项目前后端开发(带完整源码) 全方位全步骤手把手教学
|
人工智能 自然语言处理
FBI-LLM低比特基础大语言模型来了,首个完全从头训练的二值化语言模型
【8月更文挑战第22天】《FBI-LLM:通过自回归蒸馏从头开始扩展全二值化大语言模型》由Ma等学者发布于arXiv。该研究呈现了首个完全从头训练的全二值化大语言模型FBI-LLM,在不牺牲性能的前提下大幅降低计算资源需求。通过自回归蒸馏技术,FBI-LLM在多种任务上展现出与高精度模型相当的表现,为二值化模型的发展开辟新路径,并有望推动专用硬件的进步。研究者公开了所有相关资源以促进领域内的进一步探索。
182 10
|
9月前
|
前端开发 Java 开发工具
【03】完整flutter的APP打包流程-以apk设置图标-包名-签名-APP名-打包流程为例—-开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草央千澈 章节内容【03】
【03】完整flutter的APP打包流程-以apk设置图标-包名-签名-APP名-打包流程为例—-开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草央千澈 章节内容【03】
532 18
【03】完整flutter的APP打包流程-以apk设置图标-包名-签名-APP名-打包流程为例—-开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草央千澈 章节内容【03】
JDK序列化原理问题之在JDK序列化中不同JDK版本字段不一致的情况如何解决
JDK序列化原理问题之在JDK序列化中不同JDK版本字段不一致的情况如何解决
187 0
|
人工智能 云栖大会
AI Infra 核心技术专题 | 2024 云栖大会预热
AI Infra 核心技术专题 | 2024 云栖大会
|
存储 缓存 负载均衡
带你认识DM 共享存储数据库集群
带你认识DM 共享存储数据库集群
381 3
|
安全 大数据
什么是高匿代理,与普匿和透明代理的区别是什么?它有什么作用?
什么是高匿代理,与普匿和透明代理的区别是什么?它有什么作用?
|
存储 监控 数据处理
Flink⼤状态作业调优实践指南:Datastream 作业篇
本文整理自俞航翔、陈婧敏、黄鹏程老师所撰写的大状态作业调优实践指南。
57030 5
Flink⼤状态作业调优实践指南:Datastream 作业篇
|
Java 数据库连接 数据库
JAVA Web项目开发SSM框架搭建(第一天)
JAVA Web项目开发SSM框架搭建(第一天)