代码没有编译,任何人都知道如何正确编写这个逻辑?
public void FilBuff<T>(T p_tInput)
{
if(typeid(p_tInput )== typeof(string))
{
m_bBuff = System.Text.Encoding.ASCII.GetBytes((string)p_tInput);
}
}
答案 0 :(得分:4)
使用typeof(T)
。像这样:
public void FilBuff<T>(T p_tInput)
{
if(typeof(T) == typeof(string))
{
m_bBuff = System.Text.Encoding.ASCII.GetBytes((string)p_tInput);
}
}
顺便说一句,你在使用泛型(而不是模板)做的事情有点奇怪。在你的情况下使用重载方法可能更好。