jdtt 2020-05-13 21:00 采纳率: 66.7%
浏览 2785
已采纳

求解答,请问为什么会报错error:cannot call member function 'void Time::get_time()'without object

#include <iostream>
using namespace std;
class Time{
    public:
        Time(int,int,int);
        int hour;
        int minute;
        int sec;
        void get_time();
};
void Time::get_time(){
    cout<<hour<<":"<<minute<<":"<<sec<<endl;
}
int main(){
    Time t1(10,13,56);
    int *p1=&t1.hour;
    cout<<*p1<<endl;
    t1.get_time();
    Time *p2=&t1;
    p2->get_time();
    void (Time::*p3)();
    p3=&Time::get_time();//就是这里报的错
    (t1.*p3)(); 
    return 0;
}
  • 写回答

1条回答 默认 最新

  • threenewbee 2020-05-13 21:43
    关注

    p3=&Time::get_time;
    不要括号

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?