14_2.cpp
资源名称:c.rar [点击查看]
上传用户:puke2000
上传日期:2022-07-25
资源大小:912k
文件大小:1k
源码类别:

C#编程

开发平台:

Visual C++

  1. //14_2
  2. #include <iostream.h>
  3. #include <stdlib.h>
  4. class Vector{
  5. public:
  6.   Vector(int s=100);
  7.   Vector(const Vector& v);
  8.   int& Elem(int ndx);
  9.   void Display();
  10.   void Set();
  11.   ~Vector();
  12. protected:
  13.   int size;
  14.   int* buffer;
  15. };
  16. Vector::Vector(int s)
  17. {
  18.   buffer=new int[size=s];
  19.   for(int i=0; i<size; i++)
  20.     buffer[i]=i*i;
  21. }
  22. Vector::Vector(const Vector& v):size(v.size)
  23. {
  24.   buffer = new int[size];
  25.   for(int i=0; i<size; i++)
  26.     buffer[i] = v.buffer[i];
  27. }
  28. int& Vector::Elem(int ndx)
  29. {
  30.   if(ndx<0||ndx>=size){
  31.     cout <<"error in index" <<endl;
  32.     exit(1);
  33.   }
  34.   return buffer[ndx];
  35. }
  36. void Vector::Display()
  37. {
  38.   for(int j=0; j<size; j++)
  39.     cout <<buffer[j] <<endl;
  40. }
  41. void Vector::Set()
  42. {
  43.   for(int j=0; j<size; j++)
  44.     buffer[j]=j+1;
  45. }
  46. Vector::~Vector(){ delete[]buffer; }
  47. void main()
  48. {
  49.   Vector a(10);
  50.   Vector b(a);
  51.   a.Set();
  52.   b.Display();
  53. }