为了账号安全,请及时绑定邮箱和手机立即绑定

为什么老提示错误?

#include<iostream>

#include"Line.h"

using namespace std;


Line::Line(int x1,int y1,int x2,int y2)

{

cout<<"Line()"<<endl;

}

Line::~Line()

{

cout<<"~Line()"<<endl;

}

void Line::setA(int x,int y)

{

//m_coorA.setX(x);

//m_coorA.setY(y);


}

void Line::setB(int x,int y)

{

m_coorB.setX(x);

m_coorB.setY(y);

}

void Line::printInfo()

{

cout<<"printInfo()"<<endl;

cout<<"("<<m_coorA.getX()<<","<<m_coorA.getY()<<")"<<endl;

cout<<"("<<m_coorB.getX()<<","<<m_coorB.getY()<<")"<<endl;

}

void Line::printInfo() const

{

cout<<"printInfo() const"<<endl;

cout<<"("<<m_coorA.getX()<<","<<m_coorA.getY()<<")"<<endl;

cout<<"("<<m_coorB.getX()<<","<<m_coorB.getY()<<")"<<endl;

}

error C2512: “Coordinate”: 没有合适的默认构造函数可用

正在回答

2 回答

你的坐标类都没有定义,也就找不到Coordinate对象也就是找不到构造函数实例化Coordinate。   m_coorA.getX()这个m_coorA是一个对象成员

0 回复 有任何疑惑可以回复我~
#1

慕田峪7021683

没搞懂
2016-06-03 回复 有任何疑惑可以回复我~

你是不是在调用的时候调用的是Coordinate这个类的默认构造函数?而在Coordinate这类中你把默认构造函数给覆盖了?

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
C++远征之封装篇(下)
  • 参与学习       70919    人
  • 解答问题       514    个

封装--面向对象三大特征之一,通过案例让C++所学知识融会贯通

进入课程

为什么老提示错误?

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信