为什么会出Segmentation fault???

scorpio16 2007-12-03 12:19:02
代码如下:
#include <iostream>
#include <string>

using namespace std;
class B
{
string name;
public:
void setname(string n){ name = n; }
string getname(){return name; }

};

class A
{
protected:
B* b;
public:
void setname(string n){
b->setname(n);
}

string getname(){
return b->getname();
}
};



class C : public A
{

};

int main()
{
C* c;
c->setname("name");
cout << c->getname();
}
...全文
90 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
lilaosi2001 2007-12-03
  • 打赏
  • 举报
回复
int main()
{
C* c;//申请一个指针,没有分配内存
c->setname("name");//这里会非法
cout << c->getname();
}
class A
{
protected:
B* b;//class B 的一个指针,你的构造函数中new了吗?
public:
void setname(string n){
b->setname(n);
}

string getname(){
return b->getname();
}
};
雪狼__ 2007-12-03
  • 打赏
  • 举报
回复
int main()
{
C* c;//申请一个指针,没有分配内存
c-> setname("name");//这里会非法
cout < < c-> getname();
}
class A
{
protected:
B* b;//class B 的一个指针,你的构造函数中new了吗? //系统默认提供的构造函数里面包括分配内存吧
public:
void setname(string n){
b-> setname(n);
}

string getname(){
return b-> getname();
}
};
ryfdizuo 2007-12-03
  • 打赏
  • 举报
回复

int main()
{
C* c;
c = new C;
c->setname("name");
cout << c->getname();
}

除此之外,代码还有问题啊:c->setname()函数实际上是A的成员指针*b在调用,首先成员指针没有初始化,其次指针b也没有和外面关联。name根本传不进去,也传不出来;
手把手讲授如何搭建成功OpenVINO框架,并且使用预训练模型快速开发超分辨率、道路分割、汽车识别、人脸识别、人体姿态和行人车辆分析。得益于OpenVINO框架的强大能力,这些例子都能够基于CPU达到实时帧率。课程的亮点在于在调通Demo的基础上更进一步:一是在讲Demo的时候,对相关领域问题进行分析(比如介绍什么是超分辨率,有什么作用)、预训练模型的来龙去脉(来自那篇论文,用什么训练的)、如何去查看不同模型的输入输出参数、如何编写对应的接口参数进行详细讲解;二是基本上对所有的代码进行重构,也就是能够让例子独立出来,并且给出了带有较详细注释的代码;三是注重实际运用,将Demo进一步和实时视频处理框架融合,形成能够独立运行的程序,方便模型落地部署;四是重难点突出、注重总结归纳,对OpenVINO基本框架,特别是能够提高视频处理速度的异步机制和能够直接部署解决实际问题的骨骼模型着重讲解,帮助学习理解;五是整个课程准备精细,每一课都避免千篇一律,前一课有对后一课的预告,后一课有对前一课的难点回顾,避免学习过程中出现突兀;六是在适当的时候拓展衍生,不仅讲OpenVINO解决图像处理问题,而且还补充图像处理的软硬选择、如何在手机上开发图像处理程序等内容,帮助拓展视野,增强对行业现状的了解。基本提纲:1、课程综述、环境配置2、OpenVINO范例-超分辨率(super_resolution_demo)3、OpenVINO范例-道路分割(segmentation_demo)4、OpenVINO范例-汽车识别(security_barrier_camera_demo)5、OpenVINO范例-人脸识别(interactive_face_detection_demo)6、OpenVINO范例-人体姿态分析(human_pose_estimation_demo)7、OpenVINO范例-行人车辆分析(pedestrian_tracker_demo)8、NCS和GOMFCTEMPLATE9、课程小结,资源分享

64,318

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧