Aliohjelman kutsutapa

Kokemuksieni mukaan VB6:ssa aliohjelman kutsutapa on yksinkertainen taikka suora. VB.netissä voi ilmeisesti jotenkin luoda "New" (periytymisellä?) komennolla uuden ilmentymän aliohjelman metodista jota sitten voi käyttää.

Osaako joku selittää milloin tätä jälkimmäistä oliohenkistä tapaa pitää käyttää. Onko siitä mitään hyötyä ?
4536
Äänestä

Muut lukivat myös

Vastaukset 4

Vanhimmat

En usko, että tässä on kyse edes aliohjelmista vaan luokista ja olioista.
New-operaattorilla luodaan luokasta olio, jonka metodeja voit sen jälkeen käyttää.

Äänestä

Visual Basiciin on sitten näemmä tullut oliomaisuus??? Kokemusta on vain 6 versiosta.

En tiedä uusimmasta VB.Netistä mitään, mutta New komennolla ei pitäisi olla mitään tekemistä periytymisen kannalta, se on vain dynaaminen tapa luoda olio "aliohjelma" muistiin.

Hyöty tulee lähinnä tietojen käsittelyn tehokkuudesta (monipuolisemmasta tavasta käsitellä muistia), joka on kätevämpää jälkimmäisellä tavalla. Vaikee selittää näin kylmiltään, mutta kokemus sen opettaa huomaamaan.

Etu on esim siinä, että kun luot New operaattorilla olion "aliohjelman" muistiin, niin homma ei ole sidottu siihen paikkaan missä loit olion muistiin. Voit luoda monta "aliohjelmaa" muistiin ja käsitellä niitä "aliohjelmia" vaikka for silmukassa. Eli voit tehdä siitä "aliohjelmasta" monta kopioita muistiin ja käsitellä niitä yksilöinä, joilla on kaikilla sama toimintatapa, mutta ei tila siellä muistissa.

Olikohan vaikeesti selitetty!?!? :D

Äänestä
  • Mitä kirjoitin tuonne Delphi palstalle...

    http://keskustelu.suomi24.fi/show.fcgi?category=108&conference=4500000000000646&posting=22000000018764839

    Engine on olio joka joka käsittelee TElement olioita muistissa "aliohjelmia". Ko. rivissä käyn jokaisen Enginen sisältämän TElement olion "aliohjelman" läpi ja teen niistä kopion jatkokäsittelyä varten.

    Aijemmassa osassa ohjelmaa olen jokaisen olion luonut "New" operaattorilla muistiin ja lisännyt sen Engine olion listaan. Eli ohjelman pätkistä voi tehdä kopioita muistiin, niistä voi tehdä kopioita jne... Kyse on pelkästään muistin käsittelystä.

    Äänestä

  • mies.. kirjoitti:

    Mitä kirjoitin tuonne Delphi palstalle...

    http://keskustelu.suomi24.fi/show.fcgi?category=108&conference=4500000000000646&posting=22000000018764839

    Engine on olio joka joka käsittelee TElement olioita muistissa "aliohjelmia". Ko. rivissä käyn jokaisen Enginen sisältämän TElement olion "aliohjelman" läpi ja teen niistä kopion jatkokäsittelyä varten.

    Aijemmassa osassa ohjelmaa olen jokaisen olion luonut "New" operaattorilla muistiin ja lisännyt sen Engine olion listaan. Eli ohjelman pätkistä voi tehdä kopioita muistiin, niistä voi tehdä kopioita jne... Kyse on pelkästään muistin käsittelystä.

    Kiitos paljon nyt ymmärrän mistä on kysymys

    Äänestä

Kommentoi aloitusta


Lissu kirjoitti:

Kokemuksieni mukaan VB6:ssa aliohjelman kutsutapa on yksinkertainen taikka suora. VB.netissä voi ilmeisesti jotenkin luoda "New" (periytymisellä?) komennolla uuden ilmentymän aliohjelman metodista jota sitten voi käyttää.

Osaako joku selittää milloin tätä jälkimmäistä oliohenkistä tapaa pitää käyttää. Onko siitä mitään hyötyä ?

Anonyymi
5000

Ilmoita asiaton sisältö

  • Sisältää materiaalia, joka on loukkaavaa, herjaavaa, rasistista, uhkailevaa tai ahdistelevaa.

  • Materiaali sisältää nimiä, yhteystietoja tai muita henkilökohtaisia tietoja. Julkisuuden henkilöistä, julkisissa viroissa toimivista ihmisistä sekä yritysten vastuuhenkilöistä saa keskustella työhön liittyen. Myös yksityiselämään liittyvistä asioista voi keskustella siltä osin, kuin niistä on julkisesti kerrottu.

  • Sisältää lapsille haitallista tai heiltä kiellettyä materiaalia. Seksuaalinen sisältö on sallittua aiheeseen tarkoitetuilla palstoilla, joiden ikäraja on 18 vuotta.

  • Lainvastaista sisältöä voi olla mm. yksityiselämää loukkaavan tiedon levitys, kiihottaminen kansanryhmää vastaan, laiton uhkaaminen, alaikäisiin liittyvä seksuaalinen sisältö/grooming, petokset, identiteettivarkaudet, kunnianloukkaukset ja tekijänoikeusrikkomukset.

  • Sisältö ei liity palstan tai keskusteluketjun aiheeseen.

  • Viesti ei ole suomea tai ruotsia (pl. International Forums), se sisältää mainontaa, se sisältää tekijänoikeuksin suojattua materiaalia, se on massapostitus tai jokin muu syy.

Jaa keskustelu