visual studio中编译没有错误,到unity内运行的时候报错

代码如下



```c#
using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class enemy : MonoBehaviour
{
    [SerializeField] private float moveSpeed;
    private Transform target;
    [SerializeField] private float maxHp;
    public float hp;
    private void Start()
    {
        hp = maxHp;
        target = GameObject.FindGameObjectWithTag("player").GetComponent<Transform>();
    }

    // Update is called once per frame
     private void Update()
    {
        Followplayer();
    }

    private void Followplayer()
    {
        transform.position = Vector2.MoveTowards(transform.position, target.position,moveSpeed*Time .deltaTime );

    }
}



报错如下
NullReferenceException: Object reference not set to an instance of an object
enemy.Followplayer () (at Assets/【scripts】/move and attack/enemy.cs:25)
enemy.Update () (at Assets/【scripts】/move and attack/enemy.cs:20)

第一,确认你场景中有tag为player的物体,
第二, target = GameObject.FindGameObjectWithTag("player").GetComponent();用 target = GameObject.FindGameObjectWithTag("player")transform;更好些