Unity中为什么不能对transform.position.x直接赋值?
发布日期:2021-06-30 19:58:43
浏览次数:2
分类:技术文章
本文共 646 字,大约阅读时间需要 2 分钟。
之前一直认为transform.position.x是只读的所以不能直接赋值,今天深究了一下,其实并不是这个原因
定位到Vector3类中,发现并没有对x、y、z进行读写限制,那为什么不能够赋值呢?
再定位到Transform类中,position是一个Vector3类型的属性,而Vector3是一个结构体,所以position是一个结构体,结构体是一个值类型,值类型在方法传递的时只传递值的副本也就是说当我们transform.position.x = 1时调用属性的Get方法得到position,但是这个position只是一个副本,对这个副本做的任何修改都对原position无影响,显然这样做是没有意义的,所以编译器禁止你做这样的操作与下面的程序一个道理,值类型传值的时传递的只是副本
using System;class Test{ void Swap(int num1, int num2) { int temp = num1; num1 = num2; num2 = temp; } static void Main() { int a = 1; int b = 2; Test t = new Test(); t.Swap(a, b); Console.WriteLine(a + " " + b); //1 2 }}
转载地址:https://liuhaowen.blog.csdn.net/article/details/88235941 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!
发表评论
最新留言
关注你微信了!
[***.104.42.241]2024年05月01日 10时46分42秒
关于作者
喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
位图索引Bitmap indexes
2019-04-30
YOLO算法(二)—— Yolov2 & yolo9000
2019-04-30
YOLO算法(三)—— Yolov3 & Yolo系列网络优缺点
2019-04-30
Python的__future__模块
2019-04-30
计算机视觉中的cost-volume的概念具体指什么(代价体积)
2019-04-30
启发函数heuristic 与 A*
2019-04-30
Image Pyramid(图像金字塔)
2019-04-30
Oracle 作业记录
2019-04-30
putty连接AWS配置(multimedia project)
2019-04-30
Hourglass Network 沙漏网络 (pose estimation姿态估计)
2019-04-30
OpenCV实战(二)——答题卡识别判卷
2019-04-30
目标检测神经网络的发展历程(52 个目标检测模型)
2019-04-30
Boundary loss 损失函数
2019-04-30
tensorflow使用tensorboard进行可视化
2019-04-30
凸优化 convex optimization
2019-04-30