How to instance a generics ScriptableObject class?,How can I instance a generics ScriptableObject

Here is my class:

  public class ObjectList<T> : ScriptableObject where T : class, new ()
        {
            public List<T> elements = new List<T> ();
        }

I wanna use this sentance to instance it:

 ScriptableObject o = ScriptableObject.CreateInstance (typeof(ObjectList<PlayerDataBase>));

But I found the object o is null
So how can I deal it?I wanna use it in my editor script so that i can serialize the set a series of class on my editorwindow, such as playerdata, weapondata and so on.

This can be (almost) achieved by using the generic class as a base class:


public class MyGenericSO<T> : ScriptableObject 
{
    // Your code goes here
}

public class MyGenericIntSO : MyGenericSO<int>
{
    // No implementation here
}