D mai haɗa harshe 2.100

Masu haɓaka harshen shirye-shiryen D sun gabatar da sakin babban mai tara bayanai na DMD 2.100.0, wanda ke tallafawa tsarin GNU/Linux, Windows, macOS da FreeBSD. Ana rarraba lambar mai tarawa a ƙarƙashin BSL (Lasisi na Ƙarfafa Software).

D ana buga shi a kididdigewa, yana da juzu'i mai kama da C/C++, kuma yana ba da aikin harrukan da aka haɗa, yayin da aron wasu ingantaccen haɓakawa da fa'idodin tsaro na harsuna masu ƙarfi. Misali, yana ba da goyan baya ga tsararrun haɗin gwiwa, nau'in ƙima, sarrafa ƙwaƙwalwar ajiya ta atomatik, shirye-shiryen layi ɗaya, mai tara shara na zaɓi, tsarin samfuri, abubuwan da aka tsara shirye-shirye, ikon amfani da ɗakunan karatu na C, da wasu ɗakunan karatu na C++ da Objective-C.

Daga cikin canje-canje a cikin sabon sakin:

  • Tsohon salon yin lodin mai aiki da aka yi amfani da shi a reshen D1 an daina. Maye gurbin opNeg, opAdd_r, opAddAssign, da sauransu. ya zo opUnary, opBinary, opBinaryRight da opOpAssign. An soke tsohon salon yin lodin mai aiki a cikin 2019 kuma zai jefa kuskure har zuwa sakin 2.100.
  • An soke kalmar sharewa tun daga 2018. Maimakon sharewa, yakamata kayi amfani da aikin lalata ko core.memory.__share.
  • An aiwatar da sabon sifa @mustuse wanda za'a iya amfani da shi ga tsari da nau'ikan ƙungiyoyi a matsayin madadin hanyar sarrafa kuskure lokacin da lambar ba ta iya ɗaukar keɓantacce (misali, a cikin @nogc blocks). Idan ba a yi amfani da kalmar da aka yiwa alama da sifa @mustuse a lamba ba, mai tarawa zai haifar da kuskure.
  • Don tsayayyen tsararru, ana ba da izinin amfani da kayan ".tupleof" don samun jerin ƙimar (lvalue) na kowane ɓangaren tsararru. foo (int, int, int) {/* … */} int[3] ia = [1, 2, 3]; foo (ia.tupleof); // analog foo (1, 2, 3); yawo[3] fa; fa.tupleof = ia.tupleof; // Sauƙaƙan aiki fa = ia yana haifar da furucin kuskure (fa == [1F, 2F, 3F]);

source: budenet.ru

Add a comment