STLarray的front方法(13)


STLarray的front方法(13)

原文地址:http://www.cplusplus.com/reference/array/array/front/
public member function
<array>

std::array::front

      reference front();
const_reference front() const;
Access first element

Returns a reference to the first element in the array container.

返回array容器第一个元素的引用。


Unlike member array::begin, which returns an iterator to this same element, this function returns a direct reference.

和begin不同,begin是返回一个指向第一个元素的迭代器,该方法返回一个引用。


Calling this function on an empty container causes undefined behavior.

对一个空的array调用该方法会导致未定义的行为。

例子:

#include <iostream>
#include <array>
using namespace std;
int main()
{
	array<double,0> ad;
	cout<<"ad.front() is "<<ad.front()<<endl;
}

运行截图:

Parameters

none


Return value

A reference to the first element in the array.

返回值为第一个元素的引用。


If the array object is const-qualified, the function returns a const_reference. Otherwise, it returns a reference.

如果array对象是const,那么返回引用也是const属性的。


Member types reference and const_reference are the reference types to the elements of the array (see array
member types
).


Example

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
// array::front
#include <iostream>
#include <array>

int main ()
{
  std::array<int,3> myarray = {2, 16, 77};

  std::cout << "front is: " << myarray.front() << std::endl;   // 2
  std::cout << "back is: " << myarray.back() << std::endl;     // 77

  myarray.front() = 100;

  std::cout << "myarray now contains:";
  for ( int& x : myarray ) std::cout << ' ' << x;

  std::cout << '\n';

  return 0;
}

Output:

front is: 2
back is: 77
myarray now contains: 100 16 77



Complexity

Constant.


Iterator validity

No changes.


Data races

The reference returned can be used to access or modify elements. Concurrently accessing or modifying different elements is safe.

返回的引用可以用来访问或者修改元素,他嗯是访问以及修改不同的元素是安全的。



Exception safety

If the container is not empty, the function never throws exceptions (no-throw guarantee).

如果容器非空,不会抛出任何异常。

Otherwise, it causes undefined behavior.

否则,会导致未定义的行为。


——————————————————————————————————————————————————————————————————

//翻译的不好的地方请多多指导,可以在下面留言或者点击左上方邮件地址给我发邮件,指出我的错误以及不足,以便我修改,更好的分享给大家,谢谢。

转载请注明出处:http://blog.csdn.net/qq844352155
author:天下无双

Email:coderguang@gmail.com

2014-8-30

于GDUT

——————————————————————————————————————————————————————————————————



发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注