首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

dynamic+class+pointer question,该怎么处理

2012-03-19 
dynamic+class+pointer questionCan anyone tell me why there is a segment error? thx~//core.hclass co

dynamic+class+pointer question
Can anyone tell me why there is a segment error? thx~


//core.h

class core
{
  public:
  core();
  int rhaha();
  private:
  int haha;
};

//core.cpp
#include "core.h"
core::core()
{
  haha=3;
}
int core::rhaha()
{
  return haha;
}

//apple.h
#include "core.h"
class apple
{
  public:
  apple();
  ~apple();
  int rnum_of_core();
  core* getapplecore();
  private:
  core *applecore;
  int num_of_core;
};

//apple.cpp
#include "apple.h"
apple::apple()
{
  core *applecore = new core;
  num_of_core = 1;
}
apple::~apple()
{
  delete applecore;
}
int apple::rnum_of_core()
{
  return num_of_core;
}
core* apple::getapplecore()
{
  return applecore;
}

//main.cpp

#include "apple.h"
#include <iostream>

using namespace std;

int main()
{
  cout<<"haha0";
  apple *aa = new apple;
  cout<<"haha1";
  cout<<aa->rnum_of_core();
  cout<<"haha2";
  cout<<aa->getapplecore()->rhaha();
}


[解决办法]
这个函数出了问题,你new的返回值赋值给的是局部变量applecore
不是类成员applecore


apple::apple() 

//core *applecore = new core; 
applecore = new core; 
num_of_core = 1; 


热点排行