定义namespace :: int类

时间:2013-03-15 21:40:32

标签: c++ oop namespaces

我希望使用命名空间可以让我定义具有已有类名称的类 - 因此命名空间将是区分它们的方法。 我寻求这个,因为我有服务器协议有一些数据类型所以我需要实现它们的类,以及它们转换为字节 这就是我所做的,它产生了错误:

#ifndef _PACKET_DATA_TYPES
#define _PACKET_DATA_TYPES
namespace mcp_t {
    class mcp_t::int {  //ERROR: expected an identifier

    }
}
#endif

如果这不可能,名称空间在这里似乎有点无用 - 无论如何我都会被迫使用mcp_int

2 个答案:

答案 0 :(得分:7)

int是一个关键字,关键字不能用于命名用户定义的类型(甚至在命名空间内)。

我担心你不得不在int以外的地方打电话给你。

答案 1 :(得分:3)

在提供定义时,您不应完全限定类的名称,也不应将关键字用作类名:

namespace mcp_t {
    class my_int {
        // ...
    };
}

mcp_t::my_int x;