回首页 回首页 ◎ 设为首页  
◎ 收藏本站  
◎ 给我留言  
  
  首 页  C/C++教程  C++之父的FAQ  C/C++动向  C/C++源代码  C/C++误区  Unix/Linux  下载中心  乱七八糟  蚂蚁的Blog  
  当前位置:首 页 >> C++之父的FAQ >> 普通 FAQ >> [转] 什么是多范型编程?
最 近 更 新
[翻译] 为何 C++ 没被用..
[转] 你推荐哪个C++编译..
[转] 你有没有想到C++会..
[转] C++是面向对象语言..推荐
[翻译] 为何 C++ 如此庞..
[翻译] 您是使用何种语..
[翻译] “C++”何得此名?
[翻译] C++ 归您所有吗?
[转] 为什么AT&T要支持C..
[转] 你为什么要发明C++?
最 新 推 荐
[转] C++是面向对象语言..推荐
[翻译] 您怎么看待 C++/..推荐
[翻译] 何谓泛型编程?..推荐
[翻译] 什么是面向对象..推荐
[转] 如果不必考虑和 C ..推荐
[翻译] 类的伟大之处是..推荐
[翻译] C 是 C++ 的子集..推荐
热 门 排 行
[转] C和C++的区别是什..
[翻译] 为何 C++ 没被用..
[转] 你推荐哪个C++编译..
[翻译] 什么是面向对象..推荐
[转] 学习C++从哪本书开..
[翻译] 类的伟大之处是..推荐
[转] 我怎么开始学习C++..
[转] 学习C++需要多少时..
[翻译] C 是 C++ 的子集..推荐
[翻译] 为何编译 C++ 版..
站 内 搜 索

Web stdcpp.cn
关键词

搜索方式

搜索范围

精确匹配
广 告

[转] 什么是多范型编程?


来源:C-View 作者:Bjarne Stroustrup 翻译:叶丰 等级:一般
发布于2007-01-19 22:31 被读533次 【字体:
Q:

什么是多范型编程?

A:

多范型(multiparadigm)编程是“以多种风格编程,各尽所能”的花哨讲法。例如,当需要在运行时区分对象类型时用面向对象编程,而在需要静态类型安全性,并且追求执行效率的时候使用泛型编程。显然,多范型编程的主要威力体现在使用多种范型(编程风格)的程序中,要通过用多种支持不同范型的语言来创建同样效果的系统是很难的。多范型编程的最引人注目的效果是:如果使来自不同范型的技术紧密协作,就可以写出比用单范型的程序更精致、维护性更好的代码。举一个简单的例子,遍历一个元素为多态类型的静态类型容器可以这样写:

	void draw_all(vector< Shape* >& vs)	// draw each element of a standard vector
	{
		for_each(vs.begin(),vs.end(),mem_fun(&Shape::draw));
	}
这里,Shape 是一个抽象基类,它定义了几何图形类层级的接口。这个例子可以很容易地推广到标准库里的任何容器:
	template< class C > void draw_all(C& cs)	// draw each element of a standard container
	{
		for_each(cs.begin(),cs.end(),mem_fun(&Shape::draw));
	}

Jim Coplien的书“Multiparadigm Design for C++”(Addison Wesley, 1998)探讨了在设计和设计方法中多种范型的运用。

原文地址:http://www.research.att.com/~bs/bs_faq.html#multiparadigm

本文乃网上搜集得来,其版权归原作者和原出处所有。如有侵犯版权之处请与我联系,我将马上进行处理。



相关专题:C++ 之父的言论
[转] 我该把const写在类型前面还是后面?
[翻译] 我应该使用按值传递还是按引用传递?

上一篇:[翻译] 为什么 C++ 允许不安全的代码?
下一篇:[转] 学习C++从哪本书开始最好?

共有评论 0 条 网友评分 1分 查看全部评论

查看全部评论

【发表评论】 评分:1分 2分 3分 4分 5分


验证码:

Powered By Www.Xydw.COM Ver1.14 管理
Copyright © 2005-2006 蚂蚁的 C/C++ 标准编程 All Right Reserved. XCMS
粤ICP备06014124号   站长:Antigloss