Re: C# 2.0 generic-классы и операции в них
От: Mab Россия http://shade.msu.ru/~mab
Дата: 22.01.06 22:59
Оценка: 33 (1)
http://www.codeproject.com/csharp/genericnumerics.asp
C# 2.0 generic-классы и операции в них
От: NightmareZ Украина www.systemhalt.nm.ru
Дата: 22.01.06 22:56
Оценка:
C# 2.0
Например, хочу создать класс матриц:
class MyMatrix<T> where ???????
{
  ...
}

Как мне указать, что в качестве T может выступать класс, для объектов которого определены операции + и * ?

....или вот ещё, пишу я например вот так:
using System;

namespace Test
{
    class Program
    {
        public static T func<T>(T x)
        {
            return x + x;
        }

        static void Main()
        {
            Console.WriteLine(func(5));
            Console.ReadLine();
        }
    }
}

А оно мне отвечает:
Operator '+' cannot be applied to operands of type 'T' and 'T'
А как ему объяснить, что к операндам типа T можно применить операцию '+'? Или как запретить передавать параметры тип которых не поддерживает операцию '+'?

И, если этого нельзя сделать, то скажите пожалуйста, как правильно определить generic-класс матриц, который мог бы обрабатывать как стандартные типы (int, double, ...) так и определённые мной?
Гости умные молчат, с ламерами вреден чат :)
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.