here is some C# code that does not compile, giving the following message :
cannot convert from 'out T' to 'out Component'
public void Get<T>(out T c) where T : Component
{
m_components.TryGetValue(typeof(T), out c);
}
Here is code that does compile :
public void Get<T>(out T c) where T : Component
{
Component temp;
m_components.TryGetValue(typeof(T), out temp);
c = (T)temp;
}
I wonder why the first code is not valid since the "where T : Component" explicitly states that T is of type Component.
Thanks