Kirjautuminen

Haku

Tehtävät

Keskustelu: Ohjelmointikysymykset: VB.NET: Matriisin syöttäminen aliohjelmaan

kisahalo [30.09.2010 13:28:52]

#

Tämä voi olla yksinkertainen ongelma, mutten löydä googlettamalla vastausta: Miten syötän matriisin aliohjelmaan?

Minulla on aliohjelma HaetaanData, joka hakee mittalaitteelta datan, tallettaa sen 27x27-matriisiin "Data", ja tästä matriisista pitäisi piirtää riveittäin käyriä. Haluan siis, että on aliohjelma Piirto(), jolle annetaan matriisi ja aliohjelma piirtää käyrät.

Kuitenkaan tuo matriisin syöttö ei onnistu edes yksiulotteisella matriisilla. Olen kokeillut seuraavia vaihtoehtoja:

Private Sub HaetaanData()
  Dim Data(30) As Double 'tai byte tai integer
  Data = 'tehdään jotain
  Piirto(Data)
End Sub

Private Sub Piirto(ByVal Data As Double)
Private Sub Piirto(ByRef Data As Double)
Private Sub Piirto(ByVal Data() As Double)
Private Sub Piirto(ByRef Data() As Double)
Private Sub Piirto(Data() As Double)

jne.

Metabolix [30.09.2010 13:38:50]

#

Ainakin Monon VB.Net-kääntäjällä toimii tuo ByRef Data() As Double, ja moniulotteisen saa lisäämällä sulkuihin oikean määrän pilkkuja.

kisahalo [30.09.2010 14:19:15]

#

Tämä on kyllä ihan legendaarinen tapa löytää vastaus: heti kun kysyy niin löytää itse. Ongelma ratkesi käyttämällä Variant-muotoa, siis

Private Sub Piirto(ByVal Data As Variant)

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta