接触C++ 已有两三个年头,但好像一直都在其边缘逗留,今天准备学习一下BOOST库,看到学习库的首要条件便是要知道:RAII,函数对象和谓词。但这几个概念,我都觉得很新鲜!
RAII:资源获取就是初始化,为了便于记忆,暂时把它理解为,把资源做为类的成员,在类的构造函数中做初始化,在析构函数中释放资源,这样在此类的对象的生命周期中,该资源始终保持有效。问题是像HANDLE之类的资源,万一获取失败了,怎么办呢?
函数对象: 重载了“()”操作符的普通类对象。好像这个东东很吸引人,以后关注一下。
谓词(函数):不好形容,简单理解为做为函数指针传递给要调用此函数的函数。调用谓词函数的函数在函数内部调用谓词函数,并根据谓词函数的返回值,做为判断条件,并行不同的执行流程。