|
|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
- #include <iostream>
- using namespace std;
- class A
- {
-
- public:
- A();
-
- A(A&b)
- {
- cout<<"执行拷贝构造函数";
- n=b.n;
- }
- A(int i)
- {
- n=i;
- cout<<"执行构造函数"<<endl;
- }
- ~A();
- void get();
- A operator++()
- {
- ++n;
- return A(n);
- }
- private:
- int n;
- };
- A::A()
- {
- cout<<"执行构造函数"<<endl;
- n=1;
- }
- A::~A()
- {
- cout<<"执行析构函数"<<endl;
- }
- void A::get()
- {
- cout<<"i:"<<n<<endl;
- }
- int main ()
- {
- A i;
- i.get();
- A m=++i;
- m.get();
- return 0;
- }
复制代码 A m 是实例化一个m了吗 是生成一个对象吗? 为什么不用构造函数
A m=++i;到底是怎么实现的 是 A m=num(n)么 那么其中有没有调用临时对象 临时对象又哪里去了呢
现在好乱啊.....
谁能告诉我 什么是临时对象
求大神解答.........................
|
|