D mutauro compiler kuburitswa 2.100

Vagadziri vemutauro weD programming vakaburitsa kuburitswa kweiyo main reference compiler DMD 2.100.0, inotsigira GNU/Linux, Windows, macOS uye FreeBSD masisitimu. Iyo compiler kodhi inogoverwa pasi peyemahara BSL (Boost Software License).

D inotaipa, ine syntax yakafanana neC/C++, uye inopa kushanda kwemitauro yakabatanidzwa, uku ichikwereta imwe yebudiriro yebudiriro nekuchengetedza mabhenefiti emitauro ine simba. Semuenzaniso, inopa rutsigiro rweassociative arrays, mhando inference, otomatiki ndangariro manejimendi, parallel programming, sarudzo yekuunganidza marara, template system, metaprogramming zvikamu, kugona kushandisa C maraibhurari, uye mamwe C ++ uye Objective-C maraibhurari.

Pakati pekuchinja mukuburitswa kutsva:

  • Maitiro ekare ekuremedza opareta anoshandiswa mubazi reD1 akamiswa. Inotsiva opNeg, opAdd_r, opAddAssign, nezvimwe. yakauya opUnary, opBinary, opBinaryRight uye opOpAssign. Chimiro chekare chekuremedza opareta chakadzikiswa muna 2019 uye chichakanda chikanganiso sekuburitswa 2.100.
  • Iyo yekudzima kiyi izwi rakadzikiswa kubva 2018. Pane kudzima, unofanira kushandisa kuparadza kana core.memory.__delete basa.
  • Hutsva @mustuse hunhu hwakaitwa hunogona kushandiswa kune struct uye mubatanidzwa mhando seimwe nzira yekubata kukanganisa kana iyo kodhi isingakwanise kubata kunze (semuenzaniso, mu @nogc blocks). Kana chirevo chakanyorwa ne @mustuse hunhu chikasashandiswa mukodhi, mugadziri achaita chikanganiso.
  • Kune static arrays, kushandiswa kwe ".tupleof" pfuma inobvumirwa kuwana kutevedzana kwezvikoshi (lvalue) zvechimwe nechimwe chechikamu. void foo(int, int, int) {/* … */ } int[3] ia = [1, 2, 3]; foo(ia.tupleof); // analogue foo(1, 2, 3); kuyangarara[3] fa; fa.tupleof = ia.tupleof; // basa rakareruka fa = ia rinokonzera kukanganisa kwekutaura (fa == [1F, 2F, 3F]);

Source: opennet.ru

Voeg