从int到const char*的不合法转换

运行结果及报错内容

当运行时,cout<< s1.fn()这一行报错
从int 到const char*不合法的转换

我的解答思路和尝试过的方法
#include <iostream>
#include <cstdio>
#include<vector>
using namespace std;

class Solution {
public:
    
    int fn(int n) {
         //先申请一个空间来保存解
        vector<int> f(n + 1, 0);
        //初始化
        f[0] = 0;
        
        if (n <= 0)
            return f[0];
        f[1] = 1;
        if (n == 1 || n==2)
            return f[1];
        f[2] = 1;
        //状态递推
        for (int i = 3; i <= n; i++)
        {
            f[i] = f[i - 1] + f[i - 2];
        }
        //返回结果
        return f[n];
    }
};

int  main()
{
    Solution s1;
    cout << s1.fn(4);
}

代码没有问题