顺序容器STL::list用法

C++ Code:

// 顺序容器STL::list用法

#include<iostream>
#include <stdio.h>
#include <stdlib.h>
#include <list>

using namespace std;

void appendItems(list<int> &li, int n)
{
	for(int i = 0; i < n; i++)
	{
		li.push_back(i+1);
	}
}

void appendItems(list<string> &li, int n)
{
	char buf[100];
	for(int i = 0; i < n; i++)
	{
		sprintf(buf, "Hello world%d", i+1);
		li.push_back(string(buf));
	}
}

void display(list<int> &li)
{
	for(list<int>::iterator it = li.begin(); it != li.end(); it++)
	{
		cout<<*it<<" ";
	}
	cout<<endl<<endl;
}

void display(list<string> &li)
{
	for(list<string>::iterator it = li.begin(); it != li.end(); it++)
	{
		cout<<it->c_str()<<endl;
	}
	cout<<endl;
}

int main(int argc, char *argv[])
{
	if(argc < 2)
	{
		cout<<"Usage: "<<argv[0]<<" <n>"<<endl;
		return 1;
	}
	int n = atoi(argv[1]);

	list<int> ilist;
	appendItems(ilist, n);
	display(ilist);

	list<string> ilist2;
	appendItems(ilist2, n);
	display(ilist2);

	return 0;
}


运行结果:

[zcm@t #43]$make
g++    -c -o a.o a.c
g++  -o a a.o
[zcm@t #44]$./a 10
1 2 3 4 5 6 7 8 9 10 

Hello world1
Hello world2
Hello world3
Hello world4
Hello world5
Hello world6
Hello world7
Hello world8
Hello world9
Hello world10

[zcm@t #45]$


 

你可能感兴趣的:(c,list,String,iterator)