codepad
[
create a new paste
]
login
|
about
Language:
C
C++
D
Haskell
Lua
OCaml
PHP
Perl
Plain Text
Python
Ruby
Scheme
Tcl
#include<iostream> class abc{ int** mass; int Msize; public: abc(int M,int a,int b){ Msize=M; mass=new int*[Msize]; mass[0]=new int(a+1);mass[0][0]=a; mass[1]=new int(b+1);mass[1][0]=b; for(int i=0;i<Msize;i++){ for(int ii=1;ii<=mass[i][0];ii++)mass[i][ii]=1; } } ~abc(){ std::cout << "~abc >>>" << std::endl; for(int i=0;i<Msize;i++){ // delete/*[]*/ mass[i]; } // delete[] mass; std::cout << "~abc <<<" << std::endl; } void del(int num=0){ int i,ii; GetElem(num,i,ii); int j=i,jj=0; int* M=new int(mass[i][0]+1); for(;jj<=mass[i][0];jj++)M[jj]=mass[j][jj]; for(int a=1;a<=M[0];a++) std::cout<<M[a]; delete []mass[i]; mass[i]=new int(M[0]); mass[i][0]=M[0]-1; jj=1; if(ii<=mass[i][0]){ while(jj<ii){mass[i][jj]=M[jj];jj++;} while(jj<=mass[i][0]){mass[i][jj]=M[jj+1];jj++;} } else while(jj<=mass[i][0])mass[i][jj]=M[jj]; delete []M; } friend std::ostream &operator <<(std::ostream& I,abc& param){ for(int i=0;i<param.Msize;i++){ for(int ii=1;ii<=param.mass[i][0];ii++){ /*if(i==param.Msize-1 && ii==param.mass[param.Msize-1][0]) std::cout<<param.mass[i][ii]; else*/ std::cout<<param.mass[i][ii]/*<<","*/; } std::cout<<std::endl; } return I; } private: void GetElem(int& num,int& i,int& ii){ int point=0; for(i=0;i<Msize;i++){ int size=mass[i][0]; for(ii=1;ii<=size;ii++){ point++; if(point==num)break; } if(point==num)break; if(i==Msize-1)i=0; } } }; int main(){ abc a(2,3,4); std::cout<<a; //a.del(5); std::cout<<a; }
Private
[
?
]
Run code
Submit