当我第一次构建我的项目时,构建成功,但是当我发布项目时,构建失败并且我收到几个错误消息:
构建恢复了 NuGet 包。再次构建项目以在构建中包含这些包。有关更多信息,请参阅以下链接 http://www.postsharp.net/links/nuget-restore。
这是什么意思?我能做什么?
使用下面的代码块作为参考,一次更新可提供以下结果:
intReturn = 0
inputArrayReturn = 1
internalArrayReturn = 1
这里对我来说唯一有意义的值是internalArrayReturn.
为什么不intReturn等于1?即使在执行过程中应该将 1 添加到结构中,但到底发生了什么导致该结构的值没有改变?如果这只是 NativeArray 和 int 之间的根本区别,有人可以解释一下或给我指出一个参考资料来帮助我更好地理解这一点吗?
另外,为什么不inputArrayReturn等于0? NativeArray是一个结构体,所以当该行执行时它不应该被视为值的副本而不是引用吗testArray = testArrayResults?如果是这种情况,则 theninputArrayReturn将保持等于 0,而不是更新为 中包含的相同值testJob.testArray。
using UnityEngine;
using Unity.Jobs;
using Unity.Collections;
public class ParallelTesting : MonoBehaviour
{
void Update()
{
NativeArray<int> testArrayResults = new NativeArray<int>(1, Allocator.TempJob);
TestJob testJob = new TestJob
{
testInt = 0,
testArray = testArrayResults
};
JobHandle testJobHandle = testJob.Schedule();
testJobHandle.Complete();
int intReturn …Run Code Online (Sandbox Code Playgroud) c# parallel-processing jobs unity-container unity-game-engine
我正在尝试在具有私有 Add 方法/调整值的能力的类中创建一个字典。基本上,我希望能够从类外部访问它并查看其中的值,但我不希望任何人能够在不使用类中的方法的情况下更改与键关联的值。
我首先尝试创建一个作为字典的属性(这样我可以轻松地尝试使用 getter 和私有 setter 执行我想要的操作),但后来发现这完全不可能。
我知道可能有一种方法可以使用自定义方法或自定义单独的类来执行此操作,但我想首先检查此处,看看 C# 中是否有任何方法可以执行此操作。
让我知道你的想法。谢谢!