无聊,闲话C++OX
我啃 2006-10-13 07:29:10 哎呀,又要出标准了,看来这次又要加入不少东西,不知是否会让人满意
前几天看到类似的帖子,好像是Wolf0403发的,说期待什么。
似乎我比较贪心,因为比较喜欢范性,加上可以说C++0X主要加的是范性的支持,当然我有很多的期待,几乎各个都期待
老了啊,没有时间好好研究:
LMABDA Expression
Concept checking
内存模型
给和我一样的朋友稍微扫扫盲吧(初初初水准,冰山一角而已,由于没有时间,仅列几个例子)
——————————————————————————————————
foreach(start_of_an_iterator,end_of_an_iterator,_1=_1+2);
这样就能对start_of_an_iterator到end_of_an_iterator里面每一个元素都+2
汗吧!
——————————————————————————————————
template<class T,class PRED>
T find_if(T start,T end,PRED _pred)
{
while (start!=end && !(_pred(*start)) ++start;
return start;
}
典型的范性函数,要求T类型支持基本的迭代要求,支持!=作为两个引用的判断相等,支持++来向后迭代,并且支持*取实参,_pred支持以一个T的实参类型作为参数,并且返回一个BOOL性质的值
所以find_if(1,2,less<int>);语法没有问题,但是实体化时就炸了
所以如何检查输入的类型是否是合法的,D&E里面说可以用FUNCTIONAL+CONDUCTOR CHECKING
我说可以用到BOOST::TYPE_TRAITS,所以我们需要一种即方便又有用又POWERFUL的“东西”
这个就叫Concept Checking或者带有限制的类型参数检查(不好听)
——————————————————————————————————
统一内存模型就不说了,大家应该很清楚
(手有点累了,暂时放下笔,(哪里有笔啊))呵呵开始挨批