标题:C++ 用new和非new来创建对象的区别
取消只看楼主
小码农
Rank: 9Rank: 9Rank: 9
来 自:大山里
等 级:蜘蛛侠
威 望:7
帖 子:151
专家分:1198
注 册:2014-11-8
结帖率:100%
已结贴  问题点数:100 回复次数:1 
C++ 用new和非new来创建对象的区别
C++创建对象时
程序代码:
#include <iostream>
using namespace std;

class A
{
private:
    int n;
public:
    A(int m):n(m)
    {
    }
    ~A(){}
    void fun();
};

int main()
{
    A a(1);  //栈中分配
    A b = A(1);  //栈中分配
    A* c = new A(1);  //堆中分配
  delete c;
    return 0;
}


代码里面的注释是网上别人写的,想问下对不对?如果是这样的话,第一种情况,在栈中分配,那么类中的成员函数又要存在哪里?大家讨论下^_^
2015-06-02 22:08
小码农
Rank: 9Rank: 9Rank: 9
来 自:大山里
等 级:蜘蛛侠
威 望:7
帖 子:151
专家分:1198
注 册:2014-11-8
得分:0 
回复 2楼 诸葛欧阳
内存中的栈是不是跟我们数据结构中的栈不一样啊,内存中的栈是怎么放数据的啊,函数又怎么放。

沉淀自己,厚积薄发!
2015-06-03 23:56



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-446117-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.151673 second(s), 8 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved