安德烈·亚历山德雷斯库(英语:Andrei Alexandrescu,1969年-),罗马尼亚裔美国人,C++和D语言专家。
从D语言2.0版本之后,他加入D语言核心开发团队,是继沃尔特·布莱特之后的最主要设计师。他撰写了《D程序设计语言》一书,全面系统地介绍了D语言的设计和实现。
他因通过模版元程序设计实现基于政策设计的开创性成果而名闻遐迩。他撰写了《现代C++设计》一书阐述了他的理念,首次在他编写的程序库Loki里加以实现。他在MOJO库里实现了move constructors。
他目前在Facebook公司就职,担任研究科学家。
他于2004年8月入美国国籍。
亚历山德雷斯库1994年7月毕业于布加勒斯理工大学,获得电子工程学士学位。
1998年9月他在C/C++ Users Journal上首次发表文章。 从1999年4月至2000年2月在Netzip公司担任程序经理。Netzip公司被RealNetworks公司后,他继续任职到2001年9月。
亚历山德雷斯库先后于2003年和2009年获得美国华盛顿大学计算机科学硕士和博士学位 。
近年来,他一直协助沃尔特·布莱特开发D语言,于2010年5月出版了《D语言程序设计》。
亚历山德雷斯库、Herb Sutter和斯科特·迈尔斯(英语:Scott Meyers)三人主持名为 C++ and Beyond的小型年度技术讨论会议。
Expected 作为C++模版类纳入Boost库。Alexandrescu 建议 使用 Expected<T> 作为一个类用于返回值用来表示要么包含一个类型T或者例外防止其被创建。这是对于要么返回代码要么显示调用例外的一项改进。Expected<T>有如下好处:
他建议采用
Expected<int> parseInt(const string&); // Returns an expected int: either an int or an exception
来代替如下的函数声明。
int parseInt(const string&); // Returns 0 on error and sets errno
或者
int parseInt(const string&); // Throws invalid_input or overflow