c ++指针void函数问题

时间:2017-01-21 13:53:53

标签: c++ function pointers void

刚开始使用c ++已经在java和python中完成了一些编码但是一直出错:

非标准语法;使用“&安培;”创建指向成员的指针

尝试多次更改代码并无法解决问题。问题在于我的main函数中的void setRadius。

circleType.h

#include <iostream>
using namespace std;

class circleType {
private:
    double radius;
public:
    circleType();
    void setRadius();
    double getRadius();
}; 

circle.cpp

circleType::circleType() {}

void circleType::setRadius() {
    cout << "what is the radius of your circle:  ";
    cin >> radius;
}

double circleType::getRadius() {
    cout << "your radius is: " << radius << endl;
    return radius;
}

int main() {
    circleType circle;
    circleType::setRadius;
    double radius = circle.getRadius;
    return 0;
}

修改

解决了简单的语法错误 - 这解决了我的问题。

circle.setRadius();
double radius = circle.getRadius();

1 个答案:

答案 0 :(得分:3)

ProductModel

第一行没有做任何事情。第二行尝试将类型circleType::setRadius; double radius = circle.getRadius; 的变量设置为等于函数。也许你想调用这些函数?

这是非运算符成员函数调用在C ++中的样子:

double

所以试试这个:

double area = circle.areaCir(radius);
double circumferance = circle.circumCir(radius);
circle.printCir(circumferance, area);