我正在尝试编写适合最多 80 列的代码行。因此,我想知道完全限定我的变量类型是否真的是强制性的?假设以下实现:
//Baz.h
namespace loggingapi {
namespace attributes {
class Baz {};
}} // namespaces
// Bar.h
namespace loggingapi {
namespace attributes {
class Baz; // forward declare Baz.
}
class Biz {
int f(Baz* b);
};
} // namespaces
要声明我的函数参数类型,有多种方法?
- 一种)
int f(Baz* b);
- b) 或
int f(attributes::Baz* b);
- c) 或
int f(loggingapi::attributes::Baz* b);
- d) 或
int f(::loggingapi::attributes::Baz* b);
在上面的列表中,哪些定义对编译器来说更清晰/模棱两可?
注意:您必须假设命名空间/参数/类/函数名称在以下实现中不能缩短。