如何在类内调用递归函数

在类内不知道如何用递归函数
using namespace std;

class Digui
{
    public:
        int num;
    int divideCnt()
{
    if(num==0)return 1;
    if(num<0)return 0;
    return (num-1).divideCnt()+(num-3).divideCnt()+(num-5).divideCnt();
}
};
int main()
{
    Digui n;
    cin>>n.num;
    int result=n.divideCnt();
    cout<<result<<endl;
}


[Error] request for member 'divideCnt' in '(((Digui*)this)->Digui::num + -1)', which is of non-class type 'int'
就是不知道咋用递归。
递归函数可以调用。

跟普通函数调用递归没有区别,举个例子,求和1+2+...+n

class Sum
{
public:
    int getSum(int n) {
        if (n == 1) return 1;
        return getSum(n - 1) + n;
    }
};
int main()
{
    Sum s;
    int a = s.getSum(3);
    cout << a << endl;
}