C++ 指针无效函数问题

c++ pointer void function issue

本文关键字:问题 函数 无效 指针 C++      更新时间:2023-10-16

刚开始使用c ++,已经用java和python做了一些编码,但不断收到错误:

非标准语法;使用"&"创建指向成员的指针

尝试多次更改代码,但无法解决问题。 问题出在我的主函数中的 void setRadius。

圆类型.h

#include <iostream>
using namespace std;
class circleType {
private:
    double radius;
public:
    circleType();
    void setRadius();
    double getRadius();
}; 

圈子.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();
circleType::setRadius;
double radius = circle.getRadius;

第一行不执行任何操作。第二行尝试将类型为 double 的变量设置为等于函数。也许您想调用这些函数?

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

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

所以试试这个:

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