定义了这个接口:
public interface IInputBoxService<out T> {
bool ShowDialog();
T Result { get; }
}
为什么以下代码有效:
public class StringInputBoxService : IInputBoxService<string> {
...
}
...
IInputBoxService<object> service = new StringInputBoxService();
这不是吗?:
public class IntegerInputBoxService : IInputBoxService<int> {
...
}
...
IInputBoxService<object> service = new IntegerInputBoxService();
它与 int 作为值类型有什么关系吗?如果是,我该如何规避这种情况?
谢谢