我已经定义构造函数了为什么编译器还说没有合适的默认构造函数

img


/*(1)定义一个圆类circle作为基类,公有派生出圆柱体的类column,求出圆柱体的体积。具体要求如下:
(1)类circle 
保护数据成员: float  r;      //圆的半径
公有构造函数: circle(float);    //初始化r
公有成员函数: float getr();    //取圆的半径r
double area();    //求圆的面积
(2)类column
  保护数据成员: float  h;      //圆柱体的高
  公有构造函数: column(float,float); //初始化r和h
  公有成员函数: float geth();    //取圆柱体的高h
double vol ();    //求圆柱体的体积
(3)编写一个程序测试该类,测试数据及要求如下:
  圆柱体对象:v(1.0,3.0); 
  本程序的执行结果如下: 
          圆柱体属性数据: 
          半径:1米
          高度:3米 
          面积:3.14平方米 
          体积:9.42立方米
*/
#include <iostream>
#define PI 3.1415926
using namespace std;
class circle//基类
{
protected:
    float  r; //圆的半径
public:
    circle(float t);  //初始化r
    float getr(); //取圆的半径r
    double area();//求圆的面积
};
circle::circle(float R)
{
    r = R;
}
float circle::getr() { return r; }
double circle::area() { return PI * r * r; }
class column :public circle//派生类
{
protected:
    float h;//圆柱体的高
public:
    column(float, float); //初始化r和h
    float geth();    //取圆柱体的高h
    double vol();    //求圆柱体的体积
};
column::column(float R, float H)
{
    this->r = R;
    h = H;
}
double column::vol() { return PI * r * r * h; }
int main()
{

}

改好了,望采纳,谢谢


/*(1)定义一个圆类circle作为基类,公有派生出圆柱体的类column,求出圆柱体的体积。具体要求如下:
(1)类circle
保护数据成员: float  r;      //圆的半径
公有构造函数: circle(float);    //初始化r
公有成员函数: float getr();    //取圆的半径r
double area();    //求圆的面积
(2)类column
  保护数据成员: float  h;      //圆柱体的高
  公有构造函数: column(float,float); //初始化r和h
  公有成员函数: float geth();    //取圆柱体的高h
double vol ();    //求圆柱体的体积
(3)编写一个程序测试该类,测试数据及要求如下:
  圆柱体对象:v(1.0,3.0);
  本程序的执行结果如下:
          圆柱体属性数据:
          半径:1米
          高度:3米
          面积:3.14平方米
          体积:9.42立方米
*/
#include <iostream>
#define PI 3.1415926
using namespace std;
class circle//基类
{
protected:
    float  r; //圆的半径
public:
    circle(float t);  //初始化r
    float getr(); //取圆的半径r
    double area();//求圆的面积
};
circle::circle(float R)
{
    r = R;
}
float circle::getr() { return r; }
double circle::area() { return PI * r * r; }
class column :public circle//派生类
{
protected:
    float h;//圆柱体的高
public:
    column(float  R, float  H); //初始化r和h
    float geth();    //取圆柱体的高h
    double vol();    //求圆柱体的体积
};
column::column(float R,float H):circle(R)
{
    h = H;
}
double column::vol() { return PI * r * r * h; }
int main()
{

}