小编Max*_*tax的帖子

尝试将指针与struct一起使用时出错

我正在尝试将RGB值编码到结构中并且它工作正常但我得到一个例外,当我尝试运行访问该结构的函数时,我的结构是nullptr.这是代码:

struct Color {
    unsigned char R;
    unsigned char G;
    unsigned char B;
}*blue, *red, *green, *yellow, *purple, *pink, *brown;

void CreateColors()
{
    blue->R = 0;
    blue->G = 0;
    blue->B = 255;

    red->R = 255;
    red->G = 0;
    red->B = 0;

    green->R = 0;
    green->G = 255;
    green->B = 0;

    yellow->R = 255;
    yellow->G = 255;
    yellow->B = 0;

    purple->R = 133;
    purple->G = 87;
    purple->B = 168;

    pink->R = 255;
    pink->G = 0;
    pink->B = 191;

    brown->R = 168; …
Run Code Online (Sandbox Code Playgroud)

c c++ struct pointers

0
推荐指数
1
解决办法
61
查看次数

我想在运行时创建一个对象数组

我正在创建一个版本的河内塔拼图。它在 Unity 层次结构中的表示方式是

-游戏对象
-----PegA
---------Arm
---------Base

抱歉,我不知道如何表示层次结构。

场景中有 3 个“钉子”和 7 个“环”作为对象。钉和环在层次结构中处于同一级别。

很明显,我可以“SerializeField”环类,只需在检查器中单击每个 Peg 并将其拖到它们上,但我想要做的只是在运行时将它们添加到代码中。这是我尝试过的。

这是我的戒指课程的一部分

public class ring : MonoBehaviour
{
    public bool locked, resting;
    private float startX, startY, deltaX, deltaY;
    private Vector3 mousePos, beforeDrag;

    private List<GameObject> pegs;

    // Start is called before the first frame update
    void Start()
    {
        startX = transform.position.x;
        startY = transform.position.y;
        locked = false;
        pegs.Add(GameObject.Find("PegA"));
        pegs.Add(GameObject.Find("PegB"));
        pegs.Add(GameObject.Find("PegC"));
    }
}
Run Code Online (Sandbox Code Playgroud)

我得到的错误是“对象引用未设置为对象的实例”

有人可以解释一下吗?

c# unity-game-engine

-2
推荐指数
1
解决办法
102
查看次数

标签 统计

c ×1

c# ×1

c++ ×1

pointers ×1

struct ×1

unity-game-engine ×1