D (език за програмиране): Разлика между версии

Изтрито е съдържание Добавено е съдържание
Addbot (беседа | приноси)
м Робот: Преместване на 28 междуезикови препратки, вече съхранявани в [http://www.wikidata.org/wiki/Wikidata:Main_Page Уикиданни], в d:q319268.
мРедакция без резюме
Ред 8:
|реализации = [http://www.digitalmars.com/d/dcompiler.html DMD], [http://dgcc.sourceforge.net/ GDC]
|диалекти = няма
|повлиян_от = [[C++]], [[Java]], [[C Sharp|C#]], [[Eifel]]
|повлиял =
}}
D е обектно оринтиран език за програмиране създаден от Уолтър Брайт (фирма Digital Mars) през [[1999]]. D започва като подобряване на [[C++]], но постепенно преминава в генерално нов език като приема някои от характеристиките на [[Java]], [[C Sharp|C#]] и [[Eifel]].
 
==Характеристики==
Ред 24:
D не е съвместим със С++ код и в общия случай директен преход е невъзможен.
 
== Реализация ==
D е все още в процес на разработка, така че често се появяват промени, които могат да повлияят на действието на стар код, или даже да попречат на компилацията му. Официалният компилатор, който в момента служи за стандарт, се разработва от Уолтър Брайт и в момента е в [[бета версия]].
 
=== Компилатори ===
*[http://www.digitalmars.com/d/dcompiler.html DMD]: официалният компилатор на Digital Mars. Лицензиранпод [[Artistic License]] и [[GNU General Public License|GNU GPL]]; на страницата могат да се намерят и [[Изходен код|изходният код]], и изпълними файлове.
*[http://dgcc.sourceforge.net/ GDC]: ''"the GNU D Compiler"'', част от GNU колекцията компилатори.
 
== Примерен код ==
 
=== Пример 1 ===
Тази примерна програма отпечатва входните параметри. Входната точка на програмата на D е <code>main</code>, а <code>args</code> e масивът от низове, представляващ входните параметри. Подобно на C и C++ и тук текстов низ може да се представи като масив от <code>char</code>.
 
Ред 44:
}
 
=== Пример 2 ===
Този пример илюстрира асоциативните масиви.
 
import std.stdio; // за writefln()
 
int main()
{
Ред 54:
// масив от низове като стойност
char[][] [char[]] container;
 
// Добавяме хора в списъка и им даваме да носят някои предмети
container["Ана"] ~= "шал";
container["Димитър"] ~= "билети";
container["Ана"] ~= "куче";
 
// Изписваме броят носени предмети за всеки човек в списъка
foreach (char[] person, char[][] items; container)
Ред 65:
return 0;
}
 
void display_item_count(char[] person, char[][] items)
{