vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
sevAniGif - als kostenlose Vollversion auf unserer vb@rchiv CD Vol.5  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2025
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

VB.NET - Ein- und Umsteiger
Re: Implizite Konvertierung 
Autor: Manfred X
Datum: 19.06.13 23:30

Hallo!

Unklar !
Das Zielarray muß zunächst geeignet dimensioniert werden,
ehe die Elemente kopiert werden können.

Kleines Demo-Beispiel .....

''' <summary>einen Bereich von Elementen aus einem Quellarray in ein 
' Zielarray kopieren</summary>
''' <typeparam name="T">Datentyp der Arrayelemente</typeparam>
''' <param name="SourceArray">Array, dessen Elemente kopiert werden</param>
''' <param name="DestinationArray">Array, in das Elemente kopiert werden</param>
''' <param name="SourceArrayStartIndex">Startindex des zu kopierenden 
' Bereichs</param>
''' <param name="ElementsToCopy">Anzahl der zu kopierenden Elemente ( 
' negativ: bis Arrayende)</param>
''' <param name="DestinationArrayStartIndex">Startindex ab dem kopierte 
' Elemente eingetragen werden</param>
''' <param name="AdjustDestinationArray">Zielarray bei Bedarf anlegen oder 
' verlängern?</param>
''' <returns>Alle Parameter OK?</returns>
Public Function CopyArrayElements(Of T) _
                           (ByVal SourceArray As T(), ByRef DestinationArray As _
                           T(), _
                            Optional ByVal SourceArrayStartIndex As Integer = _
                            0, _
                            Optional ByVal ElementsToCopy As Integer = -1, _
                            Optional ByVal DestinationArrayStartIndex As _
                            Integer = 0, _
                            Optional ByVal AdjustDestinationArray As Boolean = _
                            False) As Boolean
 
        If SourceArray Is Nothing Then Return False
        If SourceArrayStartIndex < 0 Then Return False
        If ElementsToCopy = 0 Then Return False
        If ElementsToCopy < 0 Then ElementsToCopy = SourceArray.Length - _
          SourceArrayStartIndex
        If SourceArrayStartIndex + ElementsToCopy > SourceArray.Length Then _
        Return False
 
        If DestinationArray Is Nothing Then
            If Not AdjustDestinationArray Then
                Return False
            Else
                Array.Resize(DestinationArray, ElementsToCopy)
            End If
        End If
 
        If DestinationArrayStartIndex < 0 Then Return False
        If DestinationArrayStartIndex + ElementsToCopy > _
          DestinationArray.Length Then
            If AdjustDestinationArray Then
                Array.Resize(DestinationArray, DestinationArrayStartIndex + _
                  ElementsToCopy)
            Else
                Return False
            End If
        End If
 
        Array.Copy(SourceArray, SourceArrayStartIndex, _
                   DestinationArray, DestinationArrayStartIndex, ElementsToCopy)
 
        Return True
 
    End Function
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
Implizite Konvertierung1.223sv0001019.06.13 21:07
Re: Implizite Konvertierung553ModeratorDaveS19.06.13 22:01
Re: Implizite Konvertierung600Manfred X19.06.13 23:30

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2025 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel