vector의 초기화와 반복
#include "stdafx.h"
#include
#include
using namespace std;
int main(int argc, char* argv[])
{
int a[7]={1,2,3,4,5,6,7};
vector ivector(a,a+7);//vector , vector,
// vector intvec(begin,end); 。
vector::iterator iter;
for (iter=ivector.begin();iter!=ivector.end();iter++)
{
cout<
vector의 반복:
일반적인 그룹의 스트리밍 방식은 어떻게 스트리밍하는지 다 알아야 한다.위에 교체기를 사용하여 반복할 수 있다. 일반적으로 STL에서 흔히 볼 수 있지만vector에서처럼 그룹에서 for 순환으로 반복할 수 있다. 체인 테이블, 대기열, 창고 같은 용기에서는 반복 그룹처럼 반복할 수 없기 때문에 반복기만 사용할 수 있다. 따라서 STL에서 통용되는 반복기를 반복할 수 있다.
하지만 간편한 방법이 하나 더 있다.
#include "stdafx.h"
#include
#include
#include
using namespace std;
void print(int n)
{
cout< ivector(a,a+7);
vector::iterator iter;
for_each(ivector.begin(),ivector.end(),print);// for_each
cout<
이런 식으로 다른 문장을 두루 인용한다.
STL의 용기에 대한 스트리밍은 매우 자주 사용하는 동작으로 STL에도 알고리즘을 제공한다. foreach가 용기를 옮겨다니는데, 우리가 가장 먼저 생각한 것은 for (int i = 0; i < a.size ();++ 이다i)의 순환으로 구현됩니다.이렇게 하면 몇 가지 폐단이 있다. 예를 들어 나는 현재 많은 곳에서vector를 인용 매개 변수로 전달하고 대상 구조와 분석의 대가를 줄이기 위해 나는 보통 지침으로 전달한다. 그러면 나는 프로그램의 많은 부분에 다음과 같은 코드 for(int i=0;i < a.size(),++를 써야 한다.i) delete a[i]; 코드가 매우 많지만 곳곳에 이런 순환 문장이 범람하고 있어 사람들이 프로그램을 읽을 때 다른 지침 방출 행위와 헷갈리기 쉽도록 하는 장점은 몇 가지가 있다. 1:foreach 호출 용기 내부의 스트리밍 함수는 우리의++와 같은 방식으로 스트리밍을 하는데 효율이 낮지 않다는 것은 긍정적이다. 2: delete 바늘을 사용할 때 바늘 유형을 다시 확인할 수 있다. 3: 모방 함수 클래스로 컴파일러가 컴파일러에서 함수를 전개한다. 실제적으로 함수 호출이 발생하지 않는다. 4: 코드 설명 능력을 강화하고 순환을 줄이며 코드의 가독성을 높인다.
문장
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.