??xml version="1.0" encoding="utf-8" standalone="yes"?>国产精品久久久久jk制服,女人高潮久久久叫人喷水,香蕉久久一区二区不卡无毒影院http://www.shnenglu.com/yehongly/archive/2008/09/21/62401.html?/dc:creator>?/author>Sun, 21 Sep 2008 08:35:00 GMThttp://www.shnenglu.com/yehongly/archive/2008/09/21/62401.htmlhttp://www.shnenglu.com/yehongly/comments/62401.htmlhttp://www.shnenglu.com/yehongly/archive/2008/09/21/62401.html#Feedback0http://www.shnenglu.com/yehongly/comments/commentRss/62401.htmlhttp://www.shnenglu.com/yehongly/services/trackbacks/62401.html#include <stdio.h>;
#include <stdlib.h>;

char *floatToString(double fZ,const int slen,const int alen);

main(int argc,char *argv[])
{
      fprintf(stdout,"[%s]\n",floatToString(atof(argv[1]), atoi(argv[2]), atoi(argv[3])));

      return;
}

char *floatToString(double fZ,const int slen,const int alen)
{
      char tmpstr[256];

      memset(tmpstr,'\0',256);
      sprintf(tmpstr,"%*.*lf",slen,alen,fZ); //-- q里控制_ֺ
      return(tmpstr);
}

]]>
C++文gd函数介绍 http://www.shnenglu.com/yehongly/archive/2008/09/12/61697.html?/dc:creator>?/author>Fri, 12 Sep 2008 09:07:00 GMThttp://www.shnenglu.com/yehongly/archive/2008/09/12/61697.htmlhttp://www.shnenglu.com/yehongly/comments/61697.htmlhttp://www.shnenglu.com/yehongly/archive/2008/09/12/61697.html#Feedback0http://www.shnenglu.com/yehongly/comments/commentRss/61697.htmlhttp://www.shnenglu.com/yehongly/services/trackbacks/61697.html
今天l大家介l一下C++中常用到的读写函敎ͼ新手可以收藏一下,方便以后查找?nbsp;
  1.fopen()
  fopen的原型是QFILE *fopen(const char *filename,const char *mode)Qfopen实现三个功能Qؓ使用而打开一个流Q把一个文件和此流相连接,l此返回一个FILR指针?
  参数filename指向要打开的文件名Qmode表示打开状态的字符Ԍ其取值如下:
  字符?nbsp;含义
  "r" 以只L式打开文g
  "w" 以只写方式打开文g
  "a" 以追加方式打开文g
  "r+" 以读/写方式打开文gQ如无文件出?
  "w+" 以读/写方式打开文gQ如无文件生成新文g
一个文件可以以文本模式或二q制模式打开Q这两种的区别是Q在文本模式中回车被当成一个字W?#8217;\n’Q而二q制模式认ؓ它是两个字符 0x0D,0x0A;如果在文件中d0x1BQ文本模式会认ؓq是文gl束W,也就是二q制模型不会Ҏ件进行处理,而文本方式会按一定的方式Ҏ据作 相应的{换?
  pȝ默认的是以文本模式打开Q可以修改全部变量_fmode的值来修改q个讄Q例如_fmode=O_TEXT;p|默认打开方式为文本模?而_fmode=O_BINARY;则设|默认打开方式是二q制模式?
  我们也可以在模式字符串中指定打开的模式,?rb"表示以二q制模式打开只读文gQ?w+t"?wt+"表示以文本模式打开?写文件?
  此函数返回一个FILE指针Q所以申明一个FILE指针后不用初始化Q而是用fopen()来返回一个指针ƈ与一个特定的文g相连Q如果成败,q回NULLQ中国自学编E网Q?a >www.zxbc.cn ?
  ?
   以下是引用片D:
FILE *fp; 
  if(fp=fopen("123.456","wb")) 
  puts("打开文g成功"); 
  else 
  puts("打开文g成|");
  2.fclose()
  fclose()的功能就是关闭用fopen()打开的文Ӟ其原型是Qint fclose(FILE *fp);如果成功Q返?,p|q回EOF?
  在程序结束时一定要记得关闭打开的文Ӟ不然可能会造成数据丢失的情况,我以前就l常犯这L错误?
  例:fclose(fp);
  3.fputc()
  向流写一个字W,原型是int fputc(int c, FILE *stream); 成功q回q个字符,p|q回EOF?
  例:fputc(’X’,fp);
  4.fgetc()
  从流中读一个字W,原型是int fputc(FILE *stream); 成功q回q个字符,p|q回EOF?
  例:char ch1=fgetc(fp);
  5. fseek()
此函C般用于二q制模式打开的文件中Q功能是定位到流中指定的位置Q原型是 int fseek(FILE *stream, long offset, int whence);如果成功q回0Q参数offset是移动的字符 敎ͼwhence是移动的基准Q取值是Q?
  W号帔R ?nbsp;基准位置
  SEEK_SET 0 文g开?
  SEEK_CUR 1 当前d的位|?
  SEEK_END 2 文gN
  例:fseek(fp,1234L,SEEK_CUR);//把读写位|从当前位置向后Ud1234字节(L后缀表示长整?
  fseek(fp,0L,2);//把读写位|移动到文g?
  6.fputs()
  写一个字W串到流中,原型int fputs(const char *s, FILE *stream);
    例:fputs("I Love You",fp);
  7.fgets()
  从流中读一行或指定个字W,原型是char *fgets(char *s, int n, FILE *stream); 从流中读取n-1个字W,除非d一行,参数s是来接收字符Ԍ如果成功则返回s的指针,否则q回NULL?
  例:如果一个文件的当前位置的文本如下:
  Love ,I Have
  But ……..
  如果?
  fgets(str1,4,file1);
  则执行后str1="Lov"Q读取了4-1=3个字W,而如果用
  fgets(str1,23,file1);
  则执行str="Love ,I Have"Q读取了一?不包括行’\n’)?
  8.fprintf()
  按格式输入到,其原型是int fprintf(FILE *stream, const char *format[, argument, …]);其用法和printf()相同Q不q不是写到控制台Q而是写到Ş了?
  例:fprintf(fp,"%2d%s",4,"Hahaha");
  9.fscanf()
  从流中按格式dQ其原型是int fscanf(FILE *stream, const char *format[, address, …]);其用法和scanf()相同Q不q不是从控制台读取,而是从流d|了?
  例:fscanf(fp,"%d%d" ,&x,&y);
  10.feof()
  是否已到文件尾Q是q回真,否则q回0Q其原型是int feof(FILE *stream);
  例:if(feof(fp))printf("已到文g?);
  11.ferror()
  原型是int ferror(FILE *stream);q回最q的错误代码Q可用clearerr()来清除它Qclearerr()的原型是void clearerr(FILE *stream);
  例:printf("%d",ferror(fp));
  12.rewind()
  把当前的d位置回到文g开始,原型是void rewind(FILE *stream);其实本函数相当于fseek(fp,0L,SEEK_SET);
  例:rewind(fp);
  12.remove()
  删除文gQ原型是int remove(const char *filename); 参数是要删除的文g名,成功q回0?
  例:remove("c:\\io.sys");
  13.fread()
从流中读指定个数的字W,原型? size_t fread(void *ptr, size_t size, size_t n, FILE *stream);参数ptr是保存读取的 数据Qvoid*的指针可用Q何类型的指针来替换,如char*、int *{等来替?size是每块的字节?n是读取的块数Q如果成功,q回实际? 取的块数(不是字节?Q本函数一般用于二q制模式打开的文件中?
  例:
   以下是引用片D:
char x[4230]; 
  FILE *file1=fopen("c:\\msdos.sys","r"); 
  fread(x,200,12 ,file1);//p?00*12=2400个字?
  14.fwrite()
与fread对应Q向中写指定的数据Q原型是 size_t fwrite(const void *ptr, size_t size, size_t n, FILE *stream);参数 ptr是要写入的数据指针,void*的指针可用Q何类型的指针来替换,如char*、int *{等来替?size是每块的字节?n是要写的块数Q? 如果成功Q返回实际写入的块数(不是字节?Q本函数一般用于二q制模式打开的文件中?br>    例:
   以下是引用片D:
  char x[]="I Love You"; 
  fwire(x, 6,12,fp);//写入6*12=72字节 
  把"I Love"写到fp?2ơ,?2字节
  15.tmpfile()
  其原型是FILE *tmpfile(void); 生成一个时文Ӟ?w+b"的模式打开Qƈq回q个临时的指针Q如果失败返回NULL。在E序l束Ӟq个文g会被自动删除?
  例:FILE *fp=tmpfile();
  16.tmpnam();
  其原型ؓchar *tmpnam(char *s); 生成一个唯一的文件名Q其实tmpfile()p用了此函敎ͼ参数s用来保存得到的文件名Qƈq回q个指针Q如果失败,q回NULL?
  例:tmpnam(str1);



]]>
STL vector 容器介绍http://www.shnenglu.com/yehongly/archive/2008/09/04/60925.html?/dc:creator>?/author>Thu, 04 Sep 2008 09:06:00 GMThttp://www.shnenglu.com/yehongly/archive/2008/09/04/60925.htmlhttp://www.shnenglu.com/yehongly/comments/60925.htmlhttp://www.shnenglu.com/yehongly/archive/2008/09/04/60925.html#Feedback0http://www.shnenglu.com/yehongly/comments/commentRss/60925.htmlhttp://www.shnenglu.com/yehongly/services/trackbacks/60925.html阅读全文

]]>
typedefhttp://www.shnenglu.com/yehongly/archive/2007/12/25/39547.html?/dc:creator>?/author>Tue, 25 Dec 2007 01:33:00 GMThttp://www.shnenglu.com/yehongly/archive/2007/12/25/39547.htmlhttp://www.shnenglu.com/yehongly/comments/39547.htmlhttp://www.shnenglu.com/yehongly/archive/2007/12/25/39547.html#Feedback0http://www.shnenglu.com/yehongly/comments/commentRss/39547.htmlhttp://www.shnenglu.com/yehongly/services/trackbacks/39547.html 
typedef用法结- -
q两天在看程序的时?发现很多地方都用到typedef,在结构体定义,q有一些数l等地方都大量的用到.但是有些地方q不是很清楚,今天下午,想好好研究一?上网搜了一?有不资?归纳一?
来源一:Using typedef to Curb Miscreant Code
Typedef 声明有助于创建^台无关类型,甚至能隐藏复杂和难以理解的语法。不怎样Q?typedef 能ؓ代码带来意想不到的好处,通过本文你可以学习用 typedef 避免~欠Q从而代码更健壮?br>typedef 声明Q简U?typedefQؓ现有cd创徏一个新的名字。比如h们常怋?typedef 来编写更观和可ȝ代码。所谓美观,意指 typedef 能隐藏笨拙的语法构造以及^台相关的数据cdQ从而增强可UL性和以及未来的可l护性。本文下面将竭尽全力来揭C?typedef 强大功能以及如何避免一些常见的陷阱?br>如何创徏q_无关的数据类型,隐藏W拙且难以理解的语法?
使用 typedefs 为现有类型创建同义字?br>定义易于记忆的类型名
  typedef 使用最多的地方是创建易于记忆的cd名,用它来归档程序员的意图。类型出现在所声明的变量名字中Q位?''typedef'' 关键字右辏V例如:
typedef int size;
  此声明定义了一?int 的同义字Q名字ؓ size。注?typedef q不创徏新的cd。它仅仅为现有类型添加一个同义字。你可以在Q何需?int 的上下文中?sizeQ?br>void measure(size * psz);
size array[4];
size len = file.getlength();
std::vector vs;
  typedef q可以掩饰符合类型,如指针和数组。例如,你不用象下面q样重复定义?81 个字W元素的数组Q?br>char line[81];
char text[81];
定义一?typedefQ每当要用到相同cd和大的数组Ӟ可以q样Q?br>typedef char Line[81];
Line text, secondline;
getline(text);
同样Q可以象下面q样隐藏指针语法Q?br>typedef char * pstr;
int mystrcmp(pstr, pstr);
  q里带我们到达W一?typedef 陷阱。标准函?strcmp()有两?#8216;const char *'cd的参数。因此,它可能会误导Z象下面这样声?mystrcmp()Q?br>int mystrcmp(const pstr, const pstr);
  q是错误的,按照序Q?#8216;const pstr'被解释ؓ‘char * const'Q一个指?char 的常量指针)Q而不?#8216;const char *'Q指向常?char 的指针)。这个问题很Ҏ解决Q?br>typedef const char * cpstr;
int mystrcmp(cpstr, cpstr); // 现在是正的
CQ不什么时候,只要为指针声?typedefQ那么都要在最l的 typedef 名称中加一?constQ以使得该指针本w是帔RQ而不是对象?br>代码?br>  上面讨论?typedef 行ؓ有点?#define 宏,用其实际cd替代同义字。不同点?typedef 在编译时被解释,因此让编译器来应付超预处理器能力的文本替换。例如:
typedef int (*PF) (const char *, const char *);
  q个声明引入?PF cd作ؓ函数指针的同义字Q该函数有两?const char * cd的参C及一?int cd的返回倹{如果要使用下列形式的函数声明,那么上述q个 typedef 是不可或~的Q?br>PF Register(PF pf);
  Register() 的参数是一?PF cd的回调函敎ͼq回某个函数的地址Q其|名与先前注册的名字相同。做一ơ深呼吸。下面我展示一下如果不?typedefQ我们是如何实现q个声明的:
int (*Register (int (*pf)(const char *, const char *)))
(const char *, const char *);
  很少有程序员理解它是什么意思,更不用说q种费解的代码所带来的出错风险了。显Ӟq里使用 typedef 不是一U特权,而是一U必需。持怀疑态度的h可能会问Q?OKQ有会写q样的代码吗Q?Q快速浏览一下揭C?signal()函数的头文g Q一个有同样接口的函数?br>typedef 和存储类关键字(storage class specifierQ?br>  q种说法是不是有点o人惊Ӟtypedef 像 autoQexternQmutableQstaticQ和 register 一P是一个存储类关键字。这q是?typedef 会真正媄响对象的存储Ҏ;它只是说在语句构成上Qtypedef 声明看v来象 staticQextern {类型的变量声明。下面将带到W二个陷阱:
typedef register int FAST_COUNTER; // 错误
  ~译通不q。问题出在你不能在声明中有多个存储类关键字。因为符?typedef 已经占据了存储类关键字的位置Q在 typedef 声明中不能用 registerQ或M其它存储cd键字Q?br>促进跨^台开?br>  typedef 有另外一个重要的用途,那就是定义机器无关的cdQ例如,你可以定义一个叫 REAL 的Q点类型,在目标机器上它可以i获得最高的_ֺQ?br>typedef long double REAL;
在不支持 long double 的机器上Q该 typedef 看v来会是下面这P
typedef double REAL;
q且Q在q?double 都不支持的机器上Q该 typedef 看v来会是这P?br>typedef float REAL;
   你不用对源代码做M修改Q便可以在每一U^C~译q个使用 REAL cd的应用程序。唯一要改的是 typedef 本n。在大多数情况下Q甚臌个微的变动完全都可以通过奇妙的条件编译来自动实现。不是吗? 标准库广泛地使用 typedef 来创Lq_无关cdQsize_tQptrdiff ?fpos_t 是其中的例子。此外,?std::string ?std::ofstream q样?typedef q隐藏了镉K的,难以理解的模板特化语法,例如Qbasic_stringQallocator> ?basic_ofstream>?br>作者简?br>  Danny Kalev 是一名通过认证的系l分析师Q专?C++ 和Ş式语a理论的Y件工E师?997 q到 2000 q期_他是 C++ 标准委员会成员。最q他以优异成l完成了他在普通语a学研I方面的士论文。业余时间他喜欢听古兔R乐,阅读l多利亚时期的文学作品,研究 Hittite、Basque ?Irish Gaelic q样的自然语a。其它兴包括考古和地理。Danny 时常C?C++ 论坛q定期ؓ不同?C++ |站和杂志撰写文章。他q在教育机构讲授E序设计语言和应用语a评?br>来源二:(http://www.ccfans.net/bbs/dispbbs.asp?boardid=30&;id=4455)
C语言中typedef用法
1. 基本解释
  typedef为C语言的关键字Q作用是ZU数据类型定义一个新名字。这里的数据cd包括内部数据cdQint,char{)和自定义的数据类型(struct{)?br>  在编E中使用typedef目的一般有两个Q一个是l变量一个易C意义明确的新名字Q另一个是化一些比较复杂的cd声明?br>  至于typedef有什么微妙之处,请你接着看下面对几个问题的具体阐q?br> 2. typedef & l构的问?br>  当用下面的代码定义一个结构时Q编译器报了一个错误,Z么呢Q莫非C语言不允许在l构中包含指向它自己的指针吗Q请你先猜想一下,然后看下文说明:
typedef struct tagNode
{
 char *pItem;
 pNode pNext;
} *pNode;
  {案与分析:
  1、typedef的最单?br>typedef long byte_4;
  l已知数据类型long起个新名字,叫byte_4?br>  2?typedef与结构结合?br>typedef struct tagMyStruct
{
 int iNum;
 long lLength;
} MyStruct;
  q语句实际上完成两个操作Q?br>  1) 定义一个新的结构类?br>struct tagMyStruct
{
 int iNum;
 long lLength;
};
  分析QtagMyStructUCؓ“tag”Q即“标签”Q实际上是一个时名字,struct 关键字和tagMyStruct一P构成了这个结构类型,不论是否有typedefQ这个结构都存在?br>  我们可以用struct tagMyStruct varName来定义变量,但要注意Q用tagMyStruct varName来定义变量是不对的,因ؓstruct 和tagMyStruct合在一h能表CZ个结构类型?br>  2) typedef个新的结构v了一个名字,叫MyStruct?br>typedef struct tagMyStruct MyStruct;
  因此QMyStruct实际上相当于struct tagMyStructQ我们可以用MyStruct varName来定义变量?br>  {案与分?br>  C语言当然允许在结构中包含指向它自q指针Q我们可以在建立链表{数据结构的实现上看到无数这L例子Q上qC码的Ҏ问题在于typedef的应用?br>  Ҏ我们上面的阐q可以知道:新结构徏立的q程中遇CpNext域的声明Q类型是pNodeQ要知道pNode表示的是cd的新名字Q那么在cd本nq没有徏立完成的时候,q个cd的新名字也还不存在,也就是说q个时候编译器Ҏ不认识pNode?br>  解决q个问题的方法有多种Q?br>  1)?br>typedef struct tagNode
{
 char *pItem;
 struct tagNode *pNext;
} *pNode;
  2)?br>typedef struct tagNode *pNode;
struct tagNode
{
 char *pItem;
 pNode pNext;
};
  注意Q在q个例子中,你用typedefl一个还未完全声明的cdh名字。C语言~译器支持这U做法?br>  3)、规范做法:
struct tagNode
{
 char *pItem;
 struct tagNode *pNext;
};
typedef struct tagNode *pNode;
 3. typedef & #define的问?br>  有下面两U定义pStr数据cd的方法,两者有什么不同?哪一U更好一点?
typedef char *pStr;
#define pStr char *;
  {案与分析:
  通常Ԍtypedef要比#define要好Q特别是在有指针的场合。请看例子:
typedef char *pStr1;
#define pStr2 char *;
pStr1 s1, s2;
pStr2 s3, s4;
  在上q的变量定义中,s1、s2、s3都被定义为char *Q而s4则定义成了charQ不是我们所预期的指针变量,Ҏ原因在?define只是单的字符串替换而typedef则是Z个类型v新名字?br>  #define用法例子Q?br>#define f(x) x*x
main( )
{
 int a=6Qb=2QcQ?br> c=f(a) / f(b)Q?br> printf("%d \\n"Qc)Q?br>}
  以下E序的输出结果是: 36?br>  因ؓ如此原因Q在许多C语言~程规范中提C?define定义Ӟ如果定义中包含表辑ּQ必M用括P则上q定义应该如下定义才对:
#define f(x) (x*x)
  当然Q如果你使用typedef没有这L问题?br>  4. typedef & #define的另一?br>  下面的代码中~译器会报一个错误,你知道是哪个语句错了吗?
typedef char * pStr;
char string[4] = "abc";
const char *p1 = string;
const pStr p2 = string;
p1++;
p2++;
  {案与分析:
  是p2++出错了。这个问题再一ơ提醒我们:typedef?define不同Q它不是单的文本替换。上qC码中const pStr p2q不{于const char * p2。const pStr p2和const long x本质上没有区别,都是对变量进行只读限Ӟ只不q此处变量p2的数据类型是我们自己定义的而不是系l固有类型而已。因此,const pStr p2的含义是Q限定数据类型ؓchar *的变量p2为只读,因此p2++错误?br>  #define与typedef引申?br>  1) #define宏定义有一个特别的长处Q可以?#ifdef ,#ifndef{来q行逻辑判断Q还可以使用#undef来取消定义?br>  2) typedef也有一个特别的长处Q它W合范围规则Q用typedef定义的变量类型其作用范围限制在所定义的函数或者文件内Q取决于此变量定义的位置Q,而宏定义则没有这U特性?br>  5. typedef & 复杂的变量声?br>  在编E实践中Q尤其是看别Z码的时候,常常会遇到比较复杂的变量声明,使用typedef作简化自有其价|比如Q?br>  下面是三个变量的声明Q我想用typdef分别l它们定义一个别名,请问该如何做Q?br>>1Qint *(*a[5])(int, char*);
>2Qvoid (*b[10]) (void (*)());
>3. doube(*)() (*pa)[9];
  {案与分析:
  对复杂变量徏立一个类型别名的Ҏ很简单,你只要在传统的变量声明表辑ּ里用cd名替代变量名Q然后把关键字typedef加在该语句的开头就行了?br>>1Qint *(*a[5])(int, char*);
//pFun是我们徏的一个类型别?br>typedef int *(*pFun)(int, char*);
//使用定义的新cd来声明对象,{h于int* (*a[5])(int, char*);
pFun a[5];
>2Qvoid (*b[10]) (void (*)());
//首先Z面表辑ּ蓝色部分声明一个新cd
typedef void (*pFunParam)();
//整体声明一个新cd
typedef void (*pFun)(pFunParam);
//使用定义的新cd来声明对象,{h于void (*b[10]) (void (*)());
pFun b[10];
>3. doube(*)() (*pa)[9];
//首先Z面表辑ּ蓝色部分声明一个新cd
typedef double(*pFun)();
//整体声明一个新cd
typedef pFun (*pFunParam)[9];
//使用定义的新cd来声明对象,{h于doube(*)() (*pa)[9];
pFunParam pa;

#define S(s) printf("%s\n", #s); s

 

typedef struct _TS1{

    int x, y;

} TS1, *PTS1, ***PPPTS1;  // TS1是结构体的名UͼPTS1是结构体指针的名U?/span>

// 也就是将l构?/span>struct _TS1 命名?/span>TS1,

// ?/span>struct _TS1 * 命名?/span> PTS1

// ?/span>struct _TS1 *** 命名?/span> PPPTS1

 

typedef struct { // struct后面的结构体说明也可以去?/span>

    int x, y;

} TS2, *PTS2;

 

typedef PTS1 *PPTS1; // 定义PPTS1是指?/span>PTS1的指?/span>

 

typedef struct _TTS1{

    typedef struct ITTS1 {

        int x, y;

    } iner;

    iner i;

    int x, y;

} TTS1;

 

//l构体内部的l构体也一样可以定?/span>

typedef TTS1::ITTS1 ITS1;

 

void test_struct()

{

    // 基本l构体重定义的?/span>

    TS1 ts1 = {100, 200};

    PTS1 pts1 = &ts1; // 完全{h?/span>TS1* pts1 = &ts1;

    PPTS1 ppts1 = &pts1; // 完全{h?/span>TS1** ppts1 = &pts1;

    PPPTS1 pppts1 = &ppts1; // 完全{h?/span> TS1*** pppts1 = &ppts1;

 

    TS2 ts2 = {99, 88};

    PTS2 pts2 = &ts2;   // 完全{h?/span> TS2* pts2 = &ts2;

 

    TTS1 itts1 = {{110, 220}, 10, 20};

    Its1* rits1 = &itts1.i;

    ITS1* &its1 = rits1; // {h?/span> TTS1::ITTS1 *its1 = &(itts1.i);

 

    printf("ts1\t = (%d, %d)\n*pts1\t = (%d, %d)\n"

           "**ppts1\t = (%d, %d)\n***pppts1= (%d, %d)\n\n",

            ts1.x, ts1.y, pts1->x, pts1->y,

            (**ppts1).x, (**ppts1).y, (***pppts1).x, (***pppts1).y);

    printf("ts2\t = (%d, %d)\n*pts2\t = (%d, %d)\n\n",

        ts2.x, ts2.y, pts2->x, pts2->y);

    printf("itts1\t = [(%d, %d), %d, %d]\n*its1\t =  (%d, %d)\n\n",

        itts1.i.x, itts1.i.y, itts1.x, itts1.y, its1->x, its1->y);

 

    S(pts1->x = 119);

    S(pts2->y = 911);

    S(its1->x = 999);

 

    printf("ts1\t = (%d, %d)\n*pts1\t = (%d, %d)\n"

           "**ppts1\t = (%d, %d)\n***pppts1= (%d, %d)\n\n",

            ts1.x, ts1.y, pts1->x, pts1->y,

            (**ppts1).x, (**ppts1).y, (***pppts1).x, (***pppts1).y);

    printf("ts2\t = (%d, %d)\n*pts2\t = (%d, %d)\n\n",

        ts2.x, ts2.y, pts2->x, pts2->y);

    printf("itts1\t = [(%d, %d), %d, %d]\n*its1\t =  (%d, %d)\n\n",

        itts1.i.x, itts1.i.y, itts1.x, itts1.y, its1->x, its1->y);

 

    S((*ppts1)->y = -9999);

    printf("ts1\t = (%d, %d)\n**ppts1\t = (%d, %d)\n\n",

        ts1.x, ts1.y, (*ppts1)->x, (*ppts1)->y);

 

    S((**pppts1)->x = -12345);

    S((***pppts1).y = -67890);

    printf("ts1\t = (%d, %d)\n*pts1\t = (%d, %d)\n"

           "**ppts1\t = (%d, %d)\n***pppts1= (%d, %d)\n\n",

            ts1.x, ts1.y, pts1->x, pts1->y,

            (**ppts1).x, (**ppts1).y, (***pppts1).x, (***pppts1).y);

}



]]>
STL vector的?/title><link>http://www.shnenglu.com/yehongly/archive/2007/12/11/38232.html</link><dc:creator>?/dc:creator><author>?/author><pubDate>Tue, 11 Dec 2007 06:26:00 GMT</pubDate><guid>http://www.shnenglu.com/yehongly/archive/2007/12/11/38232.html</guid><wfw:comment>http://www.shnenglu.com/yehongly/comments/38232.html</wfw:comment><comments>http://www.shnenglu.com/yehongly/archive/2007/12/11/38232.html#Feedback</comments><slash:comments>2</slash:comments><wfw:commentRss>http://www.shnenglu.com/yehongly/comments/commentRss/38232.html</wfw:commentRss><trackback:ping>http://www.shnenglu.com/yehongly/services/trackbacks/38232.html</trackback:ping><description><![CDATA[  <a >http://www.cppreference.com/cppvector/index.html</a> <div id="2ciisam" class="name-format">assign </div> <div id="qo828qg" class="syntax-name-format">Syntax: </div> <pre class="syntax-box"> #include <vector> void assign( <strong>size_type</strong> num, const <a >TYPE</a>& val ); void assign( <a >input_iterator</a> start, <a >input_iterator</a> end ); </pre> <p>The assign() function either gives the current vector the values from <em>start</em> to <em>end</em>, or gives it <em>num</em> copies of <em>val</em>.</p> <p>This function will destroy the previous contents of the vector.</p> <p>For example, the following code uses assign() to put 10 copies of the integer 42 into a vector:</p> <pre class="prettyprint"><span id="a4qymao" class="pln">vector</span><span id="uiywg2s" class="pun"><</span><span id="uaa8iky" class="kwd">int</span><span id="2e62ma4" class="pun">></span><span id="6qigaig" class="pln"> v</span><span id="ym24igk" class="pun">;</span><span id="22cqmi4" class="pln"><br> v</span><span id="q4mkaom" class="pun">.</span><span id="ui822s4" class="pln">assign</span><span id="kaaeui4" class="pun">(</span><span id="qog8eay" class="pln"> </span><span id="iy6gwcy" class="lit">10</span><span id="mcmao4a" class="pun">,</span><span id="ag6oug2" class="pln"> </span><span id="kayeigk" class="lit">42</span><span id="occquao" class="pln"> </span><span id="884ecgm" class="pun">);</span><span id="4ei4gki" class="pln"><br> </span><span id="aeci2so" class="kwd">for</span><span id="yowig2o" class="pun">(</span><span id="caq6wso" class="pln"> </span><span id="ukigc6y" class="kwd">int</span><span id="y8gc24q" class="pln"> i </span><span id="ki4264w" class="pun">=</span><span id="mckycaq" class="pln"> </span><span id="qww2syk" class="lit">0</span><span id="sa2o2c8" class="pun">;</span><span id="soosi4k" class="pln"> i </span><span id="ai2csy2" class="pun"><</span><span id="m2ms44k" class="pln"> v</span><span id="u8u82m4" class="pun">.</span><span id="2mqmkwk" class="pln">size</span><span id="aeuqwui" class="pun">();</span><span id="2cq4cyu" class="pln"> i</span><span id="4caw4gg" class="pun">++</span><span id="w8weio6" class="pln"> </span><span id="wm6ymaw" class="pun">)</span><span id="mu6giwa" class="pln"> </span><span id="uso4wuy" class="pun">{</span><span id="4g28uwi" class="pln"><br>   cout </span><span id="2icyu24" class="pun"><<</span><span id="62k4oay" class="pln"> v</span><span id="cyuseao" class="pun">[</span><span id="ci4a260" class="pln">i</span><span id="4iisagk" class="pun">]</span><span id="usgosiy" class="pln"> </span><span id="mm624cy" class="pun"><<</span><span id="gw2m4oc" class="pln"> </span><span id="4u64sgc" class="str">" "</span><span id="gecgooe" class="pun">;</span><span id="sy2kocq" class="pln"><br> </span><span id="eci2sgk" class="pun">}</span><span id="miie2ws" class="pln"><br> cout </span><span id="yokimso" class="pun"><<</span><span id="mmsiw22" class="pln"> endl</span><span id="4aycko2" class="pun">;</span><span id="q2u2awe" class="pln">            </span></pre> <p>The above code displays the following output:</p> <pre class="prettyprint"><span id="i8kagog" class="pln"></span><span id="yi66q6o" class="lit">42</span><span id="8yekg6o" class="pln"> </span><span id="wcyokiw" class="lit">42</span><span id="k2a6gg4" class="pln"> </span><span id="22w6ec2" class="lit">42</span><span id="mi2kqui" class="pln"> </span><span id="kqow6mc" class="lit">42</span><span id="66w8kii" class="pln"> </span><span id="gck4c8u" class="lit">42</span><span id="qo22eqw" class="pln"> </span><span id="ygsaai4" class="lit">42</span><span id="kyo6q2e" class="pln"> </span><span id="yocawa6" class="lit">42</span><span id="siyc2c2" class="pln"> </span><span id="wms4u2c" class="lit">42</span><span id="i2k4oma" class="pln"> </span><span id="uqyqsg2" class="lit">42</span><span id="aq82ymi" class="pln"> </span><span id="q62qeiy" class="lit">42</span><span id="uca2sgc" class="pln">          </span></pre> <p>The next example shows how assign() can be used to copy one vector to another:</p> <pre class="prettyprint"><span id="ww2e4ko" class="pln">vector</span><span id="ck22a4u" class="pun"><</span><span id="eciwm2a" class="kwd">int</span><span id="o4emigc" class="pun">></span><span id="oo6miw2" class="pln"> v1</span><span id="8s2ioki" class="pun">;</span><span id="o6ioi6o" class="pln"><br> </span><span id="y4iguk6" class="kwd">for</span><span id="wuag2g4" class="pun">(</span><span id="em2yi2e" class="pln"> </span><span id="gwa2ao6" class="kwd">int</span><span id="2m6wcao" class="pln"> i </span><span id="20uakyc" class="pun">=</span><span id="iymswmy" class="pln"> </span><span id="kiwwu2i" class="lit">0</span><span id="ma6ma2y" class="pun">;</span><span id="w62iekg" class="pln"> i </span><span id="sq2i8g8" class="pun"><</span><span id="4u24uyu" class="pln"> </span><span id="wcgeq62" class="lit">10</span><span id="aquag66" class="pun">;</span><span id="2esi8wk" class="pln"> i</span><span id="eagui4m" class="pun">++</span><span id="mua624m" class="pln"> </span><span id="mmywsoe" class="pun">)</span><span id="2sgcaws" class="pln"> </span><span id="usaecqm" class="pun">{</span><span id="es2ucge" class="pln"><br>   v1</span><span id="6oukocs" class="pun">.</span><span id="iqe2e48" class="pln">push_back</span><span id="gguiqwc" class="pun">(</span><span id="u2ioioc" class="pln"> i </span><span id="q2sy2wu" class="pun">);</span><span id="wweig2s" class="pln"><br> </span><span id="mmy2qek" class="pun">}</span><span id="o4owsi6" class="pln">              <br><br> vector</span><span id="8m8k4cq" class="pun"><</span><span id="mksmsyu" class="kwd">int</span><span id="qocie2m" class="pun">></span><span id="m22g84y" class="pln"> v2</span><span id="iiwcg8g" class="pun">;</span><span id="6ag4m4a" class="pln"><br> v2</span><span id="qwoc24w" class="pun">.</span><span id="4u6m8oa" class="pln">assign</span><span id="22maiek" class="pun">(</span><span id="2s6ugk8" class="pln"> v1</span><span id="igsycqy" class="pun">.</span><span id="c6icaoe" class="kwd">begin</span><span id="oukouiw" class="pun">(),</span><span id="6iiuk68" class="pln"> v1</span><span id="yy2aesi" class="pun">.</span><span id="go6cgc6" class="kwd">end</span><span id="eemaesg" class="pun">()</span><span id="aqumsyu" class="pln"> </span><span id="mcsggcq" class="pun">);</span><span id="oy26484" class="pln">             <br><br> </span><span id="ia6mym2" class="kwd">for</span><span id="wksemcg" class="pun">(</span><span id="aiymcky" class="pln"> </span><span id="wayw2wk" class="kwd">int</span><span id="o8ocyoi" class="pln"> i </span><span id="2gggmiy" class="pun">=</span><span id="wocamsy" class="pln"> </span><span id="6ks8o2w" class="lit">0</span><span id="si26qcy" class="pun">;</span><span id="4weqq2k" class="pln"> i </span><span id="wa2u2kq" class="pun"><</span><span id="yo6qu6g" class="pln"> v2</span><span id="yoai668" class="pun">.</span><span id="2yoksgk" class="pln">size</span><span id="6eaqmio" class="pun">();</span><span id="oemi2c2" class="pln"> i</span><span id="q2u2gui" class="pun">++</span><span id="oocie8s" class="pln"> </span><span id="yqeio2c" class="pun">)</span><span id="iecqoka" class="pln"> </span><span id="owmcq4w" class="pun">{</span><span id="y2k2yu6" class="pln"><br>   cout </span><span id="wkc62aw" class="pun"><<</span><span id="8iok2ao" class="pln"> v2</span><span id="qm4owag" class="pun">[</span><span id="2maqm6w" class="pln">i</span><span id="ygeywmg" class="pun">]</span><span id="aq22qki" class="pln"> </span><span id="cyy8wsy" class="pun"><<</span><span id="wm224i2" class="pln"> </span><span id="muiw26u" class="str">" "</span><span id="kgw4ka2" class="pun">;</span><span id="c2mim6g" class="pln"><br> </span><span id="qow6mgc" class="pun">}</span><span id="6gui2qw" class="pln"><br> cout </span><span id="k82kgci" class="pun"><<</span><span id="2iyekws" class="pln"> endl</span><span id="8ki08o4" class="pun">;</span><span id="gccg4se" class="pln">            </span></pre> <p>When run, the above code displays the following output:</p> <pre class="prettyprint"><span id="eec6cse" class="pln"></span><span id="a2kqu8a" class="lit">0</span><span id="kyq6k2u" class="pln"> </span><span id="4iqcswa" class="lit">1</span><span id="8kqckyu" class="pln"> </span><span id="usqm2om" class="lit">2</span><span id="cqyka26" class="pln"> </span><span id="muaokao" class="lit">3</span><span id="w2myeq6" class="pln"> </span><span id="qewqgc4" class="lit">4</span><span id="46y8gk4" class="pln"> </span><span id="46ok44e" class="lit">5</span><span id="gkwgmiy" class="pln"> </span><span id="wmcqeay" class="lit">6</span><span id="4wkycae" class="pln"> </span><span id="6yma482" class="lit">7</span><span id="k0eiwsg" class="pln"> </span><span id="aioci22" class="lit">8</span><span id="mciguag" class="pln"> </span><span id="e22eqea" class="lit">9</span><span id="qquamus" class="pln">     <br><br><br><br> <div id="ago48u2" class="name-format">Vector constructors </div> <div id="a2sqm66" class="syntax-name-format">Syntax: </div> <pre class="syntax-box"> #include <vector> vector(); vector( const vector& c ); vector( <strong>size_type</strong> num, const <a >TYPE</a>& val = <a >TYPE</a>() ); vector( <a >input_iterator</a> start, <a >input_iterator</a> end ); ~vector(); </pre> <p>The default vector constructor takes no arguments, creates a new instance of that vector.</p> <p>The second constructor is a default copy constructor that can be used to create a new vector that is a copy of the given vector <em>c</em>.</p> <p>The third constructor creates a vector with space for <em>num</em> objects. If <em>val</em> is specified, each of those objects will be given that value. For example, the following code creates a vector consisting of five copies of the integer 42:</p> <pre class="prettyprint"><span id="w6wc68k" class="pln">vector</span><span id="kk6uqok" class="pun"><</span><span id="a4cqmko" class="kwd">int</span><span id="c2mqwuy" class="pun">></span><span id="e4242iw" class="pln"> v1</span><span id="22aqu8g" class="pun">(</span><span id="iu824ec" class="pln"> </span><span id="saw2g2y" class="lit">5</span><span id="esy224o" class="pun">,</span><span id="c6mkyes" class="pln"> </span><span id="6ekq4gu" class="lit">42</span><span id="i22qwki" class="pln"> </span><span id="q2i8agu" class="pun">);</span><span id="icigs8a" class="pln">         </span></pre> <p>The last constructor creates a vector that is initialized to contain the elements between <em>start</em> and <em>end</em>. For example:</p> <pre class="prettyprint"><span id="o8osiy2" class="pln"></span><span id="cwkq224" class="com">// create a vector of random integers</span><span id="wey2ayk" class="pln"><br> cout </span><span id="mksea4e" class="pun"><<</span><span id="2qess2q" class="pln"> </span><span id="uc8kaeo" class="str">"original vector: "</span><span id="me82gcy" class="pun">;</span><span id="qses22m" class="pln"><br> vector</span><span id="gua2ui8" class="pun"><</span><span id="qou8gcy" class="kwd">int</span><span id="6m6yg4s" class="pun">></span><span id="qecg2iw" class="pln"> v</span><span id="gwcioui" class="pun">;</span><span id="ucaomk2" class="pln"><br> </span><span id="46g64qw" class="kwd">for</span><span id="c2w24qg" class="pun">(</span><span id="ckqmcio" class="pln"> </span><span id="siuscqe" class="kwd">int</span><span id="q2wcges" class="pln"> i </span><span id="wk4ucym" class="pun">=</span><span id="a6ag6a8" class="pln"> </span><span id="a6sosy4" class="lit">0</span><span id="6ua84sq" class="pun">;</span><span id="mca4c4g" class="pln"> i </span><span id="k6cieug" class="pun"><</span><span id="ui2aesq" class="pln"> </span><span id="me4e2ws" class="lit">10</span><span id="okkwm4a" class="pun">;</span><span id="ieeiioc" class="pln"> i</span><span id="e4sgmae" class="pun">++</span><span id="mmy26wk" class="pln"> </span><span id="qwu2wcq" class="pun">)</span><span id="oe2eiwa" class="pln"> </span><span id="qye6kqc" class="pun">{</span><span id="ay4cy2o" class="pln"><br>   </span><span id="8kigsqu" class="kwd">int</span><span id="ca2mawm" class="pln"> num </span><span id="4uuoeko" class="pun">=</span><span id="ukqwcqm" class="pln"> </span><span id="ikg268y" class="pun">(</span><span id="yemygmi" class="kwd">int</span><span id="eeaygm2" class="pun">)</span><span id="goc2gw2" class="pln"> rand</span><span id="g2cys6q" class="pun">()</span><span id="y2qwkwu" class="pln"> </span><span id="4socges" class="pun">%</span><span id="e2o4kou" class="pln"> </span><span id="a0uiwkw" class="lit">10</span><span id="u2mkg2a" class="pun">;</span><span id="2iesgos" class="pln"><br>   cout </span><span id="oiuaesg" class="pun"><<</span><span id="sqgsy2s" class="pln"> num </span><span id="qyecq0c" class="pun"><<</span><span id="oc4mmqm" class="pln"> </span><span id="qgc4aw4" class="str">" "</span><span id="8ya2eug" class="pun">;</span><span id="qgmsoci" class="pln"><br>   v</span><span id="o6m2gui" class="pun">.</span><span id="iwoi2gc" class="pln">push_back</span><span id="qsmkie2" class="pun">(</span><span id="e8mk4ma" class="pln"> num </span><span id="owu2gk6" class="pun">);</span><span id="m0q6gua" class="pln"><br> </span><span id="as2uiu2" class="pun">}</span><span id="ks6mk2o" class="pln"><br> cout </span><span id="mu4esec" class="pun"><<</span><span id="2ocqm4g" class="pln"> endl</span><span id="oekqmq6" class="pun">;</span><span id="i8iemiu" class="pln">            <br><br> </span><span id="cs6iwsi" class="com">// find the first element of v that is even</span><span id="6qecaws" class="pln"><br> vector</span><span id="owaqcig" class="pun"><</span><span id="oqm2so4" class="kwd">int</span><span id="2kqo6cq" class="pun">>::</span><span id="2qokocy" class="pln">iterator iter1 </span><span id="wsk2s28" class="pun">=</span><span id="cus2aqq" class="pln"> v</span><span id="u444wsy" class="pun">.</span><span id="yy6cq2q" class="kwd">begin</span><span id="iwciu2y" class="pun">();</span><span id="gou22gu" class="pln"><br> </span><span id="qye4cyu" class="kwd">while</span><span id="si6mq2o" class="pun">(</span><span id="ks828es" class="pln"> iter1 </span><span id="oweqyu6" class="pun">!=</span><span id="s224kg6" class="pln"> v</span><span id="emaekyu" class="pun">.</span><span id="gms2i2m" class="kwd">end</span><span id="o2geaqc" class="pun">()</span><span id="i42q4oc" class="pln"> </span><span id="sqocswk" class="pun">&&</span><span id="2u6u8am" class="pln"> </span><span id="ews2ocy" class="pun">*</span><span id="8i2aeuo" class="pln">iter1 </span><span id="oqu2sim" class="pun">%</span><span id="sg4sg64" class="pln"> </span><span id="s2koeag" class="lit">2</span><span id="46miykq" class="pln"> </span><span id="m6miyes" class="pun">!=</span><span id="om4aek6" class="pln"> </span><span id="yg8y64w" class="lit">0</span><span id="wk424u4" class="pln"> </span><span id="4sy42ok" class="pun">)</span><span id="iq86s4o" class="pln"> </span><span id="yom82u8" class="pun">{</span><span id="4wemiu6" class="pln"><br>   iter1</span><span id="o2sgiyu" class="pun">++;</span><span id="aikoeca" class="pln"><br> </span><span id="akgw2o6" class="pun">}</span><span id="4i4iy4c" class="pln">              <br><br> </span><span id="s2kqmso" class="com">// find the last element of v that is even</span><span id="y2imkam" class="pln"><br> vector</span><span id="8gea2am" class="pun"><</span><span id="esiusiw" class="kwd">int</span><span id="qyme6os" class="pun">>::</span><span id="ksy2osg" class="pln">iterator iter2 </span><span id="ssy4qe4" class="pun">=</span><span id="6ic4co6" class="pln"> v</span><span id="esy2agk" class="pun">.</span><span id="oe2eaek" class="kwd">end</span><span id="csgeaqe" class="pun">();</span><span id="qi6s228" class="pln"><br> </span><span id="kcy2mkw" class="kwd">do</span><span id="qyyckq0" class="pln"> </span><span id="c4guyec" class="pun">{</span><span id="6i2g4ok" class="pln"><br>   iter2</span><span id="4kieuq2" class="pun">--;</span><span id="s0wkeki" class="pln"><br> </span><span id="4k2q4oc" class="pun">}</span><span id="26cou4c" class="pln"> </span><span id="8ckccqm" class="kwd">while</span><span id="ckwmi62" class="pun">(</span><span id="emcgmsg" class="pln"> iter2 </span><span id="u2yeqyu" class="pun">!=</span><span id="uma2qe2" class="pln"> v</span><span id="weiykiw" class="pun">.</span><span id="qqmciye" class="kwd">begin</span><span id="kaq84ao" class="pun">()</span><span id="6mu2uiy" class="pln"> </span><span id="s4q2guq" class="pun">&&</span><span id="22gwcow" class="pln"> </span><span id="csym2ma" class="pun">*</span><span id="4cu6ugk" class="pln">iter2 </span><span id="26kgm48" class="pun">%</span><span id="yosiu2q" class="pln"> </span><span id="es4sok8" class="lit">2</span><span id="m2eakgu" class="pln"> </span><span id="6aqwkgk" class="pun">!=</span><span id="26q8yuq" class="pln"> </span><span id="mui2koi" class="lit">0</span><span id="sggsaw2" class="pln"> </span><span id="yeuimcq" class="pun">);</span><span id="wc2eke2" class="pln">              <br><br> </span><span id="26eqgko" class="com">// only proceed if we find both numbers</span><span id="a22qe4e" class="pln"><br> </span><span id="2gg6oao" class="kwd">if</span><span id="w2quiwk" class="pun">(</span><span id="gwigmie" class="pln"> iter1 </span><span id="2c2ygci" class="pun">!=</span><span id="26qusyu" class="pln"> v</span><span id="iqouagu" class="pun">.</span><span id="qua24cg" class="kwd">end</span><span id="26m8o4s" class="pun">()</span><span id="gek4iue" class="pln"> </span><span id="iqcqo22" class="pun">&&</span><span id="6ysgw2q" class="pln"> iter2 </span><span id="owiosg6" class="pun">!=</span><span id="o6ousqc" class="pln"> v</span><span id="ck4cy28" class="pun">.</span><span id="e62oeag" class="kwd">begin</span><span id="gcs2uyq" class="pun">()</span><span id="i2iea2g" class="pln"> </span><span id="2qcq4eq" class="pun">)</span><span id="yk26k2y" class="pln"> </span><span id="oekqmaq" class="pun">{</span><span id="cukqykq" class="pln"><br>   cout </span><span id="q2g8wsy" class="pun"><<</span><span id="8oo8qea" class="pln"> </span><span id="ie2s2ek" class="str">"first even number: "</span><span id="8yyuqwu" class="pln"> </span><span id="qmwaima" class="pun"><<</span><span id="wocqe6q" class="pln"> </span><span id="uk2ocqu" class="pun">*</span><span id="swo6uim" class="pln">iter1 </span><span id="go22sws" class="pun"><<</span><span id="ai84ses" class="pln"> </span><span id="owsgsy4" class="str">", last even number: "</span><span id="6sg2i4a" class="pln"> </span><span id="c2wswci" class="pun"><<</span><span id="o2i2e8s" class="pln"> </span><span id="m228iek" class="pun">*</span><span id="2e8mcqm" class="pln">iter2 </span><span id="ucg2es2" class="pun"><<</span><span id="4emie6c" class="pln"> endl</span><span id="2gu2o8q" class="pun">;</span><span id="ow42wam" class="pln">         <br><br>   cout </span><span id="aigkioc" class="pun"><<</span><span id="muq2mae" class="pln"> </span><span id="ay2kuiw" class="str">"new vector: "</span><span id="cqqkkq2" class="pun">;</span><span id="wsseuao" class="pln"><br>   vector</span><span id="usouqec" class="pun"><</span><span id="u6sesyu" class="kwd">int</span><span id="w22u22o" class="pun">></span><span id="caiu2ms" class="pln"> v2</span><span id="wo2imq2" class="pun">(</span><span id="6wiouym" class="pln"> iter1</span><span id="46u8okq" class="pun">,</span><span id="sg4qeqe" class="pln"> iter2 </span><span id="ka2cim4" class="pun">);</span><span id="m2ei2wu" class="pln"><br>   </span><span id="4oaocaw" class="kwd">for</span><span id="s0mik6c" class="pun">(</span><span id="wkkeeky" class="pln"> </span><span id="wmiouy6" class="kwd">int</span><span id="ymmyoua" class="pln"> i </span><span id="s2eqwso" class="pun">=</span><span id="qyesyo2" class="pln"> </span><span id="uc2koe4" class="lit">0</span><span id="ewuawao" class="pun">;</span><span id="q464uqe" class="pln"> i </span><span id="kaeuyek" class="pun"><</span><span id="wkimcqg" class="pln"> v2</span><span id="8qwcgkq" class="pun">.</span><span id="ai2si2e" class="pln">size</span><span id="8ys4gs8" class="pun">();</span><span id="ksecim2" class="pln"> i</span><span id="maa6gk6" class="pun">++</span><span id="k0oauie" class="pln"> </span><span id="6guq2yo" class="pun">)</span><span id="4m2es4i" class="pln"> </span><span id="kqqkki2" class="pun">{</span><span id="2o22cgk" class="pln"><br>     cout </span><span id="4204igm" class="pun"><<</span><span id="2sog2gc" class="pln"> v2</span><span id="sous2wc" class="pun">[</span><span id="6qe4k2c" class="pln">i</span><span id="aiq4wao" class="pun">]</span><span id="2gcaeag" class="pln"> </span><span id="aw2mcym" class="pun"><<</span><span id="qqeu6oc" class="pln"> </span><span id="cea2kgs" class="str">" "</span><span id="gocsw68" class="pun">;</span><span id="8aqks2y" class="pln"><br>   </span><span id="w4yeius" class="pun">}</span><span id="2e2wk4k" class="pln"><br>   cout </span><span id="s6c6iea" class="pun"><<</span><span id="8ukwmao" class="pln"> endl</span><span id="ym2mqoc" class="pun">;</span><span id="emq24kw" class="pln"><br> </span><span id="muiy22w" class="pun">}</span></pre> <p>When run, this code displays the following output:</p> <pre class="prettyprint"><span id="mugwcy6" class="pln">original vector</span><span id="giw26yu" class="pun">:</span><span id="c22uywk" class="pln"> </span><span id="kqamcym" class="lit">1</span><span id="i2ekqeg" class="pln"> </span><span id="46uqw44" class="lit">9</span><span id="cuiw6se" class="pln"> </span><span id="aiekqwc" class="lit">7</span><span id="s4yc2ag" class="pln"> </span><span id="qiwuiwc" class="lit">9</span><span id="4sgus8k" class="pln"> </span><span id="q2cy4wi" class="lit">2</span><span id="sk2msgm" class="pln"> </span><span id="aq6o24m" class="lit">7</span><span id="4maou4o" class="pln"> </span><span id="qy2qwuq" class="lit">2</span><span id="aiwciym" class="pln"> </span><span id="k2iw2gm" class="lit">1</span><span id="aqwmqyo" class="pln"> </span><span id="yy2ymim" class="lit">9</span><span id="kigaos2" class="pln"> </span><span id="g24uyui" class="lit">8</span><span id="m22ym6g" class="pln"><br> first even number</span><span id="emymsqc" class="pun">:</span><span id="emiycq8" class="pln"> </span><span id="cs2us2c" class="lit">2</span><span id="4cy2agu" class="pun">,</span><span id="264y4w8" class="pln"> last even number</span><span id="ygsgm2a" class="pun">:</span><span id="iqwqyws" class="pln"> </span><span id="yokeu4y" class="lit">8</span><span id="mua4iwc" class="pln"><br> </span><span id="2y6quio" class="kwd">new</span><span id="kcamcag" class="pln"> vector</span><span id="w2mym6w" class="pun">:</span><span id="c62824i" class="pln"> </span><span id="q428aw4" class="lit">2</span><span id="4m6w4ui" class="pln"> </span><span id="g2s8ym2" class="lit">7</span><span id="22we4ms" class="pln"> </span><span id="owm0uqe" class="lit">2</span><span id="g62gmig" class="pln"> </span><span id="qy2u6cy" class="lit">1</span><span id="qgmqg2m" class="pln"> </span><span id="4w24ouq" class="lit">9</span><span id="224qu4g" class="pln">          </span></pre> <p>All of these constructors run in <a >linear time</a> except the first, which runs in <a >constant time</a>.</p> <p>The default destructor is called when the vector should be destroyed.<br><br></p>  </span></pre><img src ="http://www.shnenglu.com/yehongly/aggbug/38232.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.shnenglu.com/yehongly/" target="_blank">?/a> 2007-12-11 14:26 <a href="http://www.shnenglu.com/yehongly/archive/2007/12/11/38232.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>c++ STL 容器基础Q一Q?/title><link>http://www.shnenglu.com/yehongly/archive/2007/12/11/38224.html</link><dc:creator>?/dc:creator><author>?/author><pubDate>Tue, 11 Dec 2007 06:00:00 GMT</pubDate><guid>http://www.shnenglu.com/yehongly/archive/2007/12/11/38224.html</guid><wfw:comment>http://www.shnenglu.com/yehongly/comments/38224.html</wfw:comment><comments>http://www.shnenglu.com/yehongly/archive/2007/12/11/38224.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.shnenglu.com/yehongly/comments/commentRss/38224.html</wfw:commentRss><trackback:ping>http://www.shnenglu.com/yehongly/services/trackbacks/38224.html</trackback:ping><description><![CDATA[     摘要:   <a href='http://www.shnenglu.com/yehongly/archive/2007/12/11/38224.html'>阅读全文</a><img src ="http://www.shnenglu.com/yehongly/aggbug/38224.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.shnenglu.com/yehongly/" target="_blank">?/a> 2007-12-11 14:00 <a href="http://www.shnenglu.com/yehongly/archive/2007/12/11/38224.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss> <footer> <div class="friendship-link"> <p>лǵվܻԴȤ</p> <a href="http://www.shnenglu.com/" title="精品视频久久久久">精品视频久久久久</a> <div class="friend-links"> </div> </div> </footer> <a href="http://www.hlbelss.org.cn" target="_blank">ƷۺϾþõһҳ</a>| <a href="http://www.fozhun.cn" target="_blank">޾Ʒþþþ66</a>| <a href="http://www.qianhongg.cn" target="_blank">ɫۺϾþ</a>| <a href="http://www.nbbook.com.cn" target="_blank">þùƷƷ </a>| <a href="http://www.xgpzgs8.cn" target="_blank">ަvþþ</a>| <a href="http://www.bestsilm.cn" target="_blank">Ʒþþþù</a>| <a href="http://www.4091.com.cn" target="_blank">þþƷһ</a>| <a href="http://www.jsrst-gov.cn" target="_blank">ݺݾƷþþĻ</a>| <a href="http://www.dyhotel.com.cn" target="_blank">97þþƷˬ</a>| <a href="http://www.shaosang.cn" target="_blank">ҹƷþþĸ</a>| <a href="http://www.yizhuyuan.cn" target="_blank">ɫۺϾþþþһ </a>| <a href="http://www.ojlf.cn" target="_blank">þ޹˾Ʒɫ</a>| <a href="http://www.zhengyuezp.cn" target="_blank">99þ99ֻѵľƷ</a>| <a href="http://www.yikafei.cn" target="_blank">޹պŷþ</a>| <a href="http://www.ejtc.cn" target="_blank">ŷ޷avþò</a>| <a href="http://www.16pk8.cn" target="_blank">91Ʒþþþþ</a>| <a href="http://www.love20.com.cn" target="_blank">޾ƷŮþþ</a>| <a href="http://www.qp8978.cn" target="_blank">þþþ</a>| <a href="http://www.51lol.cn" target="_blank">þwwƷw˳</a>| <a href="http://www.haobanben.cn" target="_blank">þۺϹapp</a>| <a href="http://www.92625.cn" target="_blank">þþþۺþ</a>| <a href="http://www.jingzhuikang.cn" target="_blank">۲˾þþƷٸAV</a>| <a href="http://www.galidun.cn" target="_blank">ԸߺþþþþþþAAAAA</a>| <a href="http://www.masiah.com.cn" target="_blank">˾þü91 </a>| <a href="http://www.nthaixin.com.cn" target="_blank">ձһþ </a>| <a href="http://www.trjyzj.cn" target="_blank">þþþþþþ</a>| <a href="http://www.zg-ly.cn" target="_blank">wwþþþþþþþ</a>| <a href="http://www.effusion.net.cn" target="_blank">þþһ</a>| <a href="http://www.6998bar.cn" target="_blank">뾫Ʒþþɫ</a>| <a href="http://www.ytmsw.cn" target="_blank">þĻ</a>| <a href="http://www.xiangyuesiji.cn" target="_blank">ʵҶ԰׾ʾþ</a>| <a href="http://www.material7.cn" target="_blank">þ޸ۿ</a>| <a href="http://www.hfdsbw.cn" target="_blank">˺ݺۺϾþ88</a>| <a href="http://www.zfrnhbv.com.cn" target="_blank">þþƷAV鶹</a>| <a href="http://www.xiaoshuocn.cn" target="_blank">þ˾Ʒһ</a>| <a href="http://www.0470gq.cn" target="_blank">ձƷþþþӰԺձ</a>| <a href="http://www.nxxdz.cn" target="_blank">þþƷ޸</a>| <a href="http://www.gdkm2.cn" target="_blank">ŷպۺϾþ</a>| <a href="http://www.xsdbw.cn" target="_blank">ݺɫþۺѿ </a>| <a href="http://www.5yfyf.cn" target="_blank">ۺۺϾþ69</a>| <a href="http://www.cjbyt.cn" target="_blank">99þþƷþþþþ崿</a>| <script> (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })(); </script> </body>