tutorials.de Buch-Aktion 05/2012
Like Tree2Danke
  • 2 Beitrag von Thomas Darimont
ERLEDIGT
NEIN
ANTWORTEN
2
ZUGRIFFE
362
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    Registriert seit
    Jun 2002
    Ort
    Saarbrücken (Saarland)
    Beiträge
    9.886
    Blog-Einträge
    29
    Hallo,

    hier mal ein kleines Beispiel wie man mit dynamic Typing Unterstützung für Operatoren bei der Verwendung von generics realisieren kann:

    Code csharp:
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    
    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Numerics;
    using System.Reflection;
     
    namespace De.Tutorials.Training
    {
        class DynamicOpExample
        {
            static void Main(string[] args)
            {
                Console.WriteLine(new int[] { 1, 2, 3 }.DynamicSum());
                Console.WriteLine(new double[] { 1.3, 2.3, 3.4 }.DynamicSum());
                Console.WriteLine(new BigInteger[] { 1, 2, 3 }.DynamicSum());
                Console.WriteLine(new long[] { 1, 2, 3 }.DynamicSum());
                Console.WriteLine(new float[] { 1, 2, 3 }.DynamicSum());
            }
     
        }
     
        static class Extensions
        {
            public static T DynamicSum<T>(this IEnumerable<T> source)
            {
                dynamic sum = default(T);
                foreach (T element in source)
                {
                    sum = (T)(sum + element);
                }
                return sum;
            }
        }
     
    }


    Ausgabe:
    Code :
    1
    2
    3
    4
    5
    
    6
    7
    6
    6
    6

    Gruß Tom
    Nico Graichen und Christian Kusmanow bedanken sich. 
    Java rocks!
    How to become a good Java Programmer?
    Does IT in Java and .Net
    The only valid measurement of code quality: WTFs / minute
    Blog
    Xing
    Twitter

  2. #2
    Avatar von Spyke
    Spyke Spyke ist offline Capoeirista
    Registriert seit
    Oct 2002
    Beiträge
    931
    Mit Framework 2.0 und älter aber nicht möglich.
    (Soweit ich weiss, bin mir eigentlich sogar sicher, hab kein VS hier, wollts nur mit erwähnt haben)

    Wobei mir persönlich diese extra this Methoden nicht gefallen, aber das ist ein anderes Thema.
     
    www.iv-interactive.de - Projektewebsite
    WikiParser - aktuelles Projekt

  3. #3
    Registriert seit
    Jun 2002
    Ort
    Saarbrücken (Saarland)
    Beiträge
    9.886
    Blog-Einträge
    29
    Hallo,

    dieser Beitrag setzt C# 4.0 vorraus. (Das dynamic Schlüsselwort gibts ja auch erst seit 4.0)

    Gruß Tom
     
    Java rocks!
    How to become a good Java Programmer?
    Does IT in Java and .Net
    The only valid measurement of code quality: WTFs / minute
    Blog
    Xing
    Twitter

Ähnliche Themen

  1. Generics Syntax
    Von Lastlord im Forum Java
    Antworten: 5
    Letzter Beitrag: 03.11.10, 08:50
  2. Generics
    Von bRainLaG im Forum Java
    Antworten: 3
    Letzter Beitrag: 09.12.09, 12:42
  3. Generics
    Von Conkerchen im Forum Algorithmen & Datenstrukturen mit Java
    Antworten: 1
    Letzter Beitrag: 31.05.09, 19:18
  4. Covariance für .Net Generics?
    Von Thomas Darimont im Forum .NET Café
    Antworten: 0
    Letzter Beitrag: 10.06.08, 15:44
  5. Casten von Generics
    Von dr-oetker im Forum Java
    Antworten: 2
    Letzter Beitrag: 13.04.07, 09:37