C++11的新增函数和nullptr

Posted Harris-H

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C++11的新增函数和nullptr相关的知识,希望对你有一定的参考价值。

C++11的新增函数和nullptr

函数

iota:初始化数组,递增序。

minmax_element 返回最小最大元素

min_element 返回最小元素

max_element 返回最大元素

int main()
	vector<int>a(10);
	iota(a.begin(),a.end(),1);	//1 2 3 4 5 6 7 8 9 10
	for(int x:a) cout<<x<<" ";puts("");
	auto p = minmax_element(a.begin(),a.end());//pair<int*,int*>
	printf("%d %d\\n",*(p.x),*(p.y)); 
	printf("min=%d\\n",*min_element(a.begin(),a.end())); //1
	printf("max=%d\\n",*max_element(a.begin(),a.end())); //10
	return 0;

nullptr

nullptr是c++11用来表示空指针新引入的常量值,在c++中如果表示空指针语义时建议使用nullptr而不要使用NULL,因为NULL本质上是个int型的0,其实不是个指针。举例:

void func(void *ptr) 
    cout << "func ptr" << endl;


void func(int i) 
    cout << "func i" << endl;


int main() 
    func(NULL); // 编译失败,会产生二义性
    func(nullptr); // 输出func ptr
    return 0;

以上是关于C++11的新增函数和nullptr的主要内容,如果未能解决你的问题,请参考以下文章

C++入门新增nullptr关键字详解

C++11 清除shared_ptr时,我应该使用reset还是设置为nullptr?

喵呜:C++基础系列:auto关键字(C++11)基于范围的for循环(C++11)指针空值nullptr(C++11)

喵呜:C++基础系列:auto关键字(C++11)基于范围的for循环(C++11)指针空值nullptr(C++11)

喵呜:C++基础系列:auto关键字(C++11)基于范围的for循环(C++11)指针空值nullptr(C++11)

C++11新特性nullptr与std::nullptr_t