fork download
  1. #include <iostream>
  2. #include <vector>
  3. using namespace std;
  4.  
  5. class hoge{
  6. public:
  7. int *a;
  8. int size;
  9. hoge(int a[],int size):a(a),size(size){}
  10. hoge(hoge& h):a(h.a),size(h.size){}
  11. int sum(){
  12. int s=0;
  13. for(int i =0;i<size;i++)s+=a[i];
  14. return s;
  15. }
  16. };
  17.  
  18. void push(hoge& h,vector<int>& vec,int value)
  19. {
  20. vec.push_back(value);
  21. h = hoge(vec.data(),value);
  22. }
  23.  
  24. int main(){
  25. vector<int> a={1,2,3};
  26. hoge huga(a.data(),a.size());
  27. cout<<huga.sum()<<endl;
  28. push(huga,a,4);
  29. cout<<huga.sum()<<endl;
  30. return 0;
  31. }
Success #stdin #stdout 0s 3468KB
stdin
Standard input is empty
stdout
6
10