way of defining class in a namespace

前端 未结 6 758
悲哀的现实
悲哀的现实 2020-12-11 08:11

I defined a class in a namespace in a header as follows

#ifndef _c1_
#define _c1_

namespace classspace
{
    class Aclass;
}

class Aclass
{
    //body
};

         


        
6条回答
  •  执笔经年
    2020-12-11 08:57

    Namespaces are essentially packages. In your Qt example, the class is forward declared. One way to use namespaces is as follows:

    namespace MyNamespace
    {
      class MyClass
      {
      };
    }
    

    If you want to do it like your first example, then you must forward declare it. For example,

    namespace MyNamespace
    {
       class MyClass;
    }
    
    class MyClass
    {
        //body
    };
    

提交回复
热议问题