டி மொழி தொகுப்பி வெளியீடு 2.100

D நிரலாக்க மொழியின் டெவலப்பர்கள், GNU/Linux, Windows, macOS மற்றும் FreeBSD அமைப்புகளை ஆதரிக்கும் முக்கிய குறிப்பு தொகுப்பான DMD 2.100.0 இன் வெளியீட்டை வழங்கினர். கம்பைலர் குறியீடு இலவச BSL (பூஸ்ட் மென்பொருள் உரிமம்) கீழ் விநியோகிக்கப்படுகிறது.

D என்பது நிலையான முறையில் தட்டச்சு செய்யப்பட்டுள்ளது, C/C++ போன்ற தொடரியல் உள்ளது, மேலும் தொகுக்கப்பட்ட மொழிகளின் செயல்திறனை வழங்குகிறது, அதே நேரத்தில் மாறும் மொழிகளின் வளர்ச்சி திறன் மற்றும் பாதுகாப்பு நன்மைகள் சிலவற்றை கடன் வாங்குகிறது. எடுத்துக்காட்டாக, இது துணை வரிசைகள், வகை அனுமானம், தானியங்கி நினைவக மேலாண்மை, இணை நிரலாக்கம், விருப்பமான குப்பை சேகரிப்பான், ஒரு டெம்ப்ளேட் அமைப்பு, மெட்டா புரோகிராமிங் கூறுகள், C நூலகங்களைப் பயன்படுத்தும் திறன் மற்றும் சில C++ மற்றும் Objective-C நூலகங்களுக்கான ஆதரவை வழங்குகிறது.

புதிய வெளியீட்டில் உள்ள மாற்றங்களில்:

  • D1 கிளையில் பயன்படுத்தப்பட்ட பழைய ஆபரேட்டர் ஓவர்லோடிங் நிறுத்தப்பட்டது. opNeg, opAdd_r, opAddAssign போன்றவற்றை மாற்றுகிறது. opUnary, opBinary, opBinaryRight மற்றும் opOpAssign வந்தது. ஆபரேட்டர் ஓவர்லோடிங்கின் பழைய பாணி 2019 இல் நிறுத்தப்பட்டது மற்றும் வெளியீடு 2.100 இல் ஒரு பிழை ஏற்படும்.
  • 2018 ஆம் ஆண்டு முதல் நீக்குதல் முக்கிய வார்த்தை நிறுத்தப்பட்டது. நீக்குவதற்குப் பதிலாக, அழிக்க அல்லது core.memory.__delete செயல்பாட்டைப் பயன்படுத்த வேண்டும்.
  • ஒரு புதிய @mustuse பண்புக்கூறு செயல்படுத்தப்பட்டுள்ளது, இது விதிவிலக்குகளை குறியீடு கையாள முடியாதபோது (உதாரணமாக, @nogc தொகுதிகளில்) பிழை கையாள்வதற்கான மாற்று முறையாக struct மற்றும் Union வகைகளுக்குப் பயன்படுத்தப்படலாம். @mustuse பண்புக்கூறுடன் குறிக்கப்பட்ட வெளிப்பாடு குறியீட்டில் பயன்படுத்தப்படாவிட்டால், கம்பைலர் பிழையை உருவாக்கும்.
  • நிலையான வரிசைகளுக்கு, ".tupleof" பண்புகளின் பயன்பாடு, அணிவரிசையின் ஒவ்வொரு தனிமத்தின் மதிப்புகளின் (lvalue) வரிசையைப் பெற அனுமதிக்கப்படுகிறது. void foo(int, int, int) { /* … */ } int[3] ia = [1, 2, 3]; foo(ia.tupleof); // அனலாக் ஃபூ(1, 2, 3); மிதவை[3] fa; fa.tupleof = ia.tupleof; // எளிய பணி fa = ia ஒரு பிழை உறுதிப்படுத்தலில் விளைகிறது (fa == [1F, 2F, 3F]);

ஆதாரம்: opennet.ru

கருத்தைச் சேர்