programming-examples/c++/Others/Array based on int pointer.cpp

51 lines
971 B
C++
Raw Normal View History

2019-11-15 12:59:38 +01:00
Array based on int pointer
#include <iostream>
#include <stdlib.h>
using namespace std;
class array
{
int *p;
int size;
public:
array(int sz) {
p = new int[sz];
if(!p) exit(1);
size = sz;
}
~array() {delete [] p;}
array(const array &object);
void put(int i, int j){
if(i>=0 && i<size)
p[i] = j;
}
int get(int i) {return p[i];}
};
array::array(const array &object)
{
int lcl_i;
p = new int[object.size];
if (!p)
exit(1);
for(lcl_i=0; lcl_i < object.size; lcl_i++)
p[lcl_i] = object.p[lcl_i];
}
int main(void)
{
array num(10);
int lcl_i;
for (lcl_i=0; lcl_i<10; lcl_i++)
num.put(lcl_i, lcl_i);
for (lcl_i=9; lcl_i>=0; lcl_i--)
cout << num.get(lcl_i);
cout << endl;
// Create another array using the copy constructor
array x=num;
for (lcl_i=0; lcl_i<10; lcl_i++)
cout << x.get(lcl_i);
}