I'm trying to overload operators for class that are buried in namespace's, but i have plenty of CE.
//main.cpp
#include "ss.h"
#include "ss.cpp"
nn::ss a(2);
nn::ss b(3);
int main(){
//nn::ss c=a+b;
return 0;
}
//ss.h
namespace nn{
class ss;
}
nn::ss operator+(const nn::ss &a, const nn::ss &b);
namespace nn{
class ss{
private:
int v;
public:
ss(int v);
friend ss ::operator+(const ss &a, const ss &b);
};
}
//ss.cpp
using namespace nn;
ss::ss(int v) : v(v){}
ss operator+(const ss &a, const ss &b){
return ss(a.v+b.v);
}
I've tried using several stack questions answers but that's all i have figured out yet. None of questions I've found contained overloading operators like +
or =
, the method I tried using here worked for <<
operators.