Luettaessa tietotyypeistä ”tyypin määrittelyä” käytetään usein ilman minkäänlaista selvitystä sen merkityksestä.
Esimerkiksi https://en.wikipedia.org/wiki/Type_system , meillä on lause ”… koska C ++: lla on tiukemmat säännöt -tyyppimääritykset …”
Apua selvitettäessä, mikä ero on esimerkiksi type ja tyypin määrittely arvostetaan suuresti!
Kommentit
- Tiedätkö mikä on tyyppi ? Sitten tyypin määrittely on, kuten termi ehdottaa, tyypin määritelmä. En ' ole varma, mikä oikea kysymyksesi on täällä.
Vastaa
Tyypin ”määritteleminen” on uuden tyypin rakentaminen, joka koostuu yhdestä tai useammasta olemassa olevasta tietotyypistä. Esimerkiksi ”Complex Number” -tyyppi ilmoitetaan usein järjestetyksi ”Real Numbers” -pariksi:
Type Complex Real a Real b End
a ja b ovat todellisia ja kuvitteellisia osia .
Tämä näennäiskoodikoodi on ”Tyyppimääritelmä”.
Kommentit
- En halua ' ei usko, että tätä pyydetään ' … Abstraktin tietotyypin määritteleminen on tietysti tyypin määrittely, mutta sillä ei ole mitään tekemistä vahvan kanssa tai heikko kirjoittaminen (osa kysymystä)
vastaus
Lähettäjä ”C ++ – ohjelmointikieli” – kirjoittanut Bjarne Stroustrup C ++: n luojaa.
Tyyppi määrittelee joukon mahdollisia arvoja ja operaatioita (objektille).
Myös seuraavat määritelmät ovat yhteydessä samasta kirjasta otettuun tyyppiin
Julistus on käsky joka tuo nimen ohjelmaan ja määrittelee a nimetyn entiteetin tyyppi
Objekti on jokin muisti, jolla on jonkin tyyppinen arvo.
Arvo on joukko tyypin mukaan tulkittuja bittejä. p> Muuttuja on nimetty objekti
Kommentit
- Tämä ei ole ' ei mainita tyypin määritystä .
Vastaa
Muuttujat voivat sisältää erilaisia arvoja, esim. Kokonaislukuja, reaaleja, merkkejä … Tätä kutsutaan muuttujan TYYPPIKSI. Jotkut kielet kirjoitetaan dynaamisesti. Tämä tarkoittaa, että tulkki tai kääntäjä päättää muuttujan tyypin puolestasi. Staattisilla kirjoitetuilla kielillä tyyppi on määriteltävä itse ilmoitettaessa muuttujaa. Tämä on TYYPIN MÄÄRITELMÄ.
Vahvilla, tyypillisillä staattisilla kielillä säännöt kieltävät eri tyyppien sekoittamisen. jos haluat lisätä esimerkiksi reaalin ja kokonaisluvun, sinun on nimenomaisesti lähetettävä kokonaisluku todelliseksi.
Heikolla kirjoitetulla kielellä voit sekoittaa tyyppejä. mutta koska matalan tason bittikuviot eroavat toisistaan, voit saada ei-toivottuja tuloksia.
Useimmat kielet ovat välillä. On selvää, että ei-toivotut vaikutukset eivät ole hyväksyttäviä, kun taas nimenomaisen näyttelijöiden tarve tekee koodista raskasta. Joten useimmat kääntäjät tekevät implisiittisen näyttelijän joillekin vakiotoiminnoille. Todellisen ja kokonaisluvun lisääminen aiheuttaa tällöin implisiittisesti näyttelijän todellisuuden.
kommentit
- mikä on " pe " ? En myöskään ' näe, miten ensimmäisen kappaleen jälkeen kirjoittamasi ' liittyvät kysymykseen.
- @ David: pe = exempli gratia = Esimerkiksi = esimerkin vuoksi … Lause " … koska C ++: lla on tiukemmat säännöt tyyppimäärittelyistä … " osoittaa mielestäni, että kysymys esitetään heikon ja vahvan kirjoittamisen yhteydessä.
- Aha – että ' s " esim. ", englanniksi – muokattu.
- todellakin se on. virheeni.
- Tämä vastaus osoittaa useita vakavia väärinkäsityksiä tyyppeistä ja tyyppijärjestelmistä. Lähes jokainen tämän vastauksen virke on virheellinen, hämmentävä tai harhaanjohtava. Aluksi tyypin järjestelmät eivät ole vain muuttujia:
3+'a'
ei ' t sisällä muuttujia, mutta ne tarkistetaan. Dynaamisesti " kirjoitettu " kielitoteutus don ' t " päättää " minkä tahansa tyypin. Epäsuorat konversiot eivät tee kielestä dynaamisempaa " " tai " kirjoitettu heikosti ".Yleensä staattinen ja dynaaminen " kirjoittaminen " eivät ole spektrin vastakkaisia päitä, vaan puhuvat vain täysin eri asioista.