安德烈·亚历山德雷斯库(英语:Andrei Alexandrescu,1969年),罗马尼亚裔美国人C++D语言专家。

事实速览 Andrei Alexandrescu, 出生 ...
Andrei Alexandrescu
Thumb
2009年Alexandrescu参加ACCU
出生1969年(55—56岁)
罗马尼亚社会主义共和国布加勒斯特[1]
居住地 美国
国籍 罗马尼亚
 美国(2004年8月起)[2]
教育程度布加勒斯理工大学华盛顿大学
职业Facebook研究科学家
知名于C++D语言专家[3]
配偶Sanda Alexandrescu
网站erdani.org
关闭

D语言2.0版本之后,他加入D语言核心开发团队,是继沃尔特·布莱特之后的最主要设计师。他撰写了《D程序设计语言》一书,全面系统地介绍了D语言的设计和实现。

他因通过模版元程序设计实现基于政策设计的开创性成果而名闻遐迩。他撰写了《现代C++设计》一书阐述了他的理念,首次在他编写的程序库Loki里加以实现。他在MOJO库里实现了move constructors[4]

他目前在Facebook公司就职,担任研究科学家。

他于2004年8月入美国国籍[5]

faviconfaviconfaviconfavicon
5 sources

教育和职业

亚历山德雷斯库1994年7月毕业于布加勒斯理工大学,获得电子工程学士学位。[6][7]

1998年9月他在C/C++ Users Journal上首次发表文章。 从1999年4月至2000年2月在Netzip公司担任程序经理。Netzip公司被RealNetworks公司后,他继续任职到2001年9月。[6]

亚历山德雷斯库先后于2003年和2009年获得美国华盛顿大学计算机科学硕士和博士学位 。[8][9][10]

近年来,他一直协助沃尔特·布莱特开发D语言,于2010年5月出版了《D语言程序设计》。

亚历山德雷斯库、Herb Sutter斯科特·迈尔斯英语Scott Meyers三人主持名为 C++ and Beyond的小型年度技术讨论会议。

faviconfaviconfaviconfavicon
5 sources

著作

书籍

贡献

Expected 作为C++模版类纳入Boost[11]。Alexandrescu 建议 [12]使用 Expected<T> 作为一个类用于返回值用来表示要么包含一个类型T或者例外防止其被创建。这是对于要么返回代码要么显示调用例外的一项改进。Expected<T>有如下好处:

  • 关联计算目标和错误关联
  • 自然构成多种例外
  • 在错误处理和抛出例外两种风格中切换
  • Teleportation possible across thread boundaries, across nothrow subsystem boundaries and across time (现在保存, 之后抛出)
  • 收集、集合和组合例外
faviconfavicon
2 sources

例子

他建议采用

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

参考文献

外部链接

Wikiwand in your browser!

Seamless Wikipedia browsing. On steroids.

Every time you click a link to Wikipedia, Wiktionary or Wikiquote in your browser's search results, it will show the modern Wikiwand interface.

Wikiwand extension is a five stars, simple, with minimum permission required to keep your browsing private, safe and transparent.