D idasilẹ ede alakojo 2.100

Awọn olupilẹṣẹ ti ede siseto D ṣafihan itusilẹ ti olupilẹṣẹ itọkasi akọkọ DMD 2.100.0, eyiti o ṣe atilẹyin GNU/Linux, Windows, macOS ati awọn eto FreeBSD. Awọn koodu alakojo ti wa ni pin labẹ awọn free BSL (Alagbega Software License).

D ti tẹ ni iṣiro, ni sintasi kan ti o jọra si C/C++, o si pese iṣẹ ṣiṣe ti awọn ede ti a ṣajọ, lakoko ti o ya diẹ ninu ṣiṣe idagbasoke ati awọn anfani aabo ti awọn ede ti o ni agbara. Fún àpẹrẹ, ó pèsè àtìlẹ́yìn fún àwọn ètò àjọṣepọ̀, ìdánilẹ́kọ̀ọ́ tẹ̀, ìṣàkóso ìṣàkóso ìrántí aládàáṣe, sísọ̀rọ̀ tí ó jọra, aṣàkójọ ìdọ̀tí yíyàn, ètò àwòkọ́ṣe, àwọn ohun èlò ìṣàfilọ́lẹ̀, agbára láti lo àwọn ilé ikawe C, àti àwọn ilé ikawe C ++ àti Objective-C.

Lara awọn ayipada ninu itusilẹ tuntun:

  • Ara atijọ ti ikojọpọ onišẹ ti a lo ninu ẹka D1 ti dawọ duro. OpNeg rọpo, opAdd_r, opAddAssign, ati bẹbẹ lọ. wá opUnary, opBinary, opBinaryRight ati opOpAssign. Ara atijọ ti iṣakojọpọ onišẹ jẹ idinku ni ọdun 2019 ati pe yoo jabọ aṣiṣe kan bi itusilẹ 2.100.
  • Koko-ọrọ piparẹ naa ti ni idiwọ lati ọdun 2018. Dipo piparẹ, o yẹ ki o lo iṣẹ run tabi core.memory.__delete.
  • Iwa @mustuse tuntun ti jẹ imuse ti o le lo si awọn ọna ati awọn iru ẹgbẹ gẹgẹbi ọna yiyan ti mimu aṣiṣe nigbati koodu ko le mu awọn imukuro (fun apẹẹrẹ, ni awọn bulọọki @nogc). Ti ikosile ti o samisi pẹlu ami ami @mustuse ko ba lo ninu koodu, olupilẹṣẹ yoo ṣe aṣiṣe.
  • Fun awọn ọna aimi, lilo ohun-ini “.tupleof” ni a gba ọ laaye lati gba ọkọọkan awọn iye (lvalue) ti ipin kọọkan ti orun naa. ofo foo(int, int, int) {/* … */} int[3] ia = [1, 2, 3]; foo (ia.tupleof); // afọwọṣe foo (1, 2, 3); leefofo [3] fa; fa.tupleof = ia.tupleof; // o rọrun iṣẹ iyansilẹ FA = ia esi ni ohun aṣiṣe assert (fa == [1F, 2F, 3F]);

orisun: opennet.ru

Fi ọrọìwòye kun