#include <iostream>
using namespace std;
class Jacger
{
public:
int length(void);
Jacger(int len);
Jacger( const Jacger &box);
~Jacger();
private:
int *ptr;
};
Jacger::Jacger( int len){
ptr = new int;
*ptr = len;
}
Jacger::Jacger( const Jacger &box){
ptr = new int;
*ptr = *box.ptr;
}
Jacger :: ~Jacger(){
delete ptr;
}
int Jacger::length(){
return *ptr;
}
void function( Jacger ultra){
cout << "Lrnght of values is : " << ultra.length << endl;
}
int main(){
Jacger Jacger(10);
function(Jacger);
}
Mk có 4 vấn đề chưa hiểu ở dòng code trên :
- Dòng 17: Nếu viết như trên thì mk đặt cấp phát động cho địa chỉ “*ptr” à ?
- Dòng 18: Hoặc mk nghĩ nếu đặt CPD cho địa chỉ thì giá trị cũng bị ảnh hưởng theo => … ?
- Dòng 23: Nếu đặt 1 cái như trên rồi sao phải đặt cái nữa ?
- Dòng 24: mk chưa hiểu dòng này -_-
// mk đã nghĩ hơn 1 ngày rồi vẫn chưa ra, mong mọi người giúp mk