Issue with Timed Shooting in C#

I am trying to make a script for a tower like object that will fire a bullet evry set amount of time and I can seem to get the instantiate class function to work with me right now so if someone could help me shoot a bullet from a spawnpoint every set number of seconds, that would be WONDERFUL!!!!!!! it would be even better if you could help me useing C#...

using UnityEngine;
using System.Collections;

public class example : MonoBehaviour {
    public GameObject projectile;
    public float fireRate = 0.5F;
    private float nextFire = 0.0F;
    void Update() {
        if (Input.GetButton("Fire1") && Time.time > nextFire) {
            nextFire = Time.time + fireRate;
            GameObject clone = Instantiate(projectile, transform.position, transform.rotation) as GameObject; // Instantiates a projectile facing forward relative to the current forward vector
        }
    }
}

You need to modify the projectile variable, and apply a `ConstantForce` or something to make it move forward

Credit: I took it from the Unity Script Reference