c++namespacesstatic-functions

Static member functions in namesapce


I have static member function inside my class which I would like to add in my namespace.

class A{
public:
    static void func();
};

namespace myNamespace{
    void A::func(){
    ...
    }
}

int main(){
   myNamespace::A::func;
}

I get the following errors:

what is the reason?


Solution

  • because you put a function that belongs to the class A inside namespace. just make the class and function A together inside namespace your code should be like this

    namespace myNamespace {
    class A {
    public:
        static void func();
    };
    
    
        void A::func() {
    
        }
    }
    int main()
    {
    
        myNamespace::A::func;
    
        return 0;
    }