小弟我自己创建的泛型类有些有关问题,请高手帮忙看看
我自己创建的泛型类有些问题,请高手帮忙看看。
using System;
using System.Collections.Generic;
using System.Text;
namespace 定制泛型类
{
/// <summary>
/// 创建自定义泛型类
/// </summary>
/// <typeparam name="T">指定泛型类的类型</typeparam>
public class GenericList<T>
{
public void Add(T input1,T input2)
{
Console.WriteLine("结果是:{0}", input1 + input2); //这句有错误。
}
}
/// <summary>
/// 测试泛型类
/// </summary>
class Program
{
static void Main(string[] args)
{
GenericList<int> gList = new GenericList<int>();
gList.Add(1, 2);
GenericList<string> gStrList = new GenericList<string>();
gStrList.Add("1", "2");
Console.Read();
}
}
}
我的目的就是第一个Add的结果为3,第二个结果为"12",可是却提示错误“运算符“+”无法应用于“T”和“T”类型的操作数”这样的错误,正确的写法应该是什么?能把正确的答案给写出来吗?
------解决方案--------------------
我不懂泛型,不知道我这个方法你满意么?满意的话给我分谢谢~~!
using System;
using System.Collections.Generic;
using System.Text;
namespace 定制泛型类
{
/// <summary>
/// 创建自定义泛型类
/// </summary>
/// <typeparam name="T">指定泛型类的类型</typeparam>
public class GenericList<T>
{
public void Add(T input1,T input2)
{
Console.WriteLine("结果是:{0}", input1 + input2); //这句有错误。
}
}
/// <summary>
/// 测试泛型类
/// </summary>
class Program
{
static void Main(string[] args)
{
GenericList<int> gList = new GenericList<int>();
gList.Add(1, 2);
GenericList<string> gStrList = new GenericList<string>();
gStrList.Add("1", "2");
Console.Read();
}
}
}
我的目的就是第一个Add的结果为3,第二个结果为"12",可是却提示错误“运算符“+”无法应用于“T”和“T”类型的操作数”这样的错误,正确的写法应该是什么?能把正确的答案给写出来吗?
------解决方案--------------------
我不懂泛型,不知道我这个方法你满意么?满意的话给我分谢谢~~!
- C# code
using System; using System.Collections.Generic; using System.Text; namespace ConsoleApplication2 { class Program { static void Main(string[] args) { gList<int> gList = new gList<int>(); gList.Add(1, 2); gList<string> gStrList = new gList<string>(); gStrList.Add("1", "2"); Console.ReadKey(); } } public class gList<T> { public void Add(int input1,int input2) { Console.WriteLine("结果是:{0}", input1 + input2); } public void Add(string input1, string input2) { Console.WriteLine("结果是:{0}", input1 + input2); } }
------解决方案--------------------
并不是所有的TYPE都支持+号运算符的
泛形归根到底就是里面所有的运算要对任何类型都支持
所以+运算符肯定是不可能用在泛形里面的