您的位置:首页 > 编程语言 > C语言/C++

C++问题,对象包含与成员函数不兼容的类型限定符

2016-07-19 16:45 543 查看
在编写Image 的构造函数时:

Image::Image(const Matrix &m) //构造函数重载,由Matrix类对象构造Image类对象(Matrix类是image类的父类)

{

height=m.Height();

}

其中Height()是Matrix 类的成员函数,返回矩阵的高;

标红的m.Height();提示 : Error 对象包含与成员函数不兼容的类型限定符

解决方法:将int Height() 改成int Height()const

其实这里面涉及到了常成员函数的使用:

1. 对于一个常量对象,只能调用常函数

2. 如果常函数里面不小心修改了类成员或者调用了非常函数,编译器会帮你找出这个错误。

此问题的原因正是第1条。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: