"this"嵌套类中的关键字C++
"this" keyword in C++ nested classes
如果我有以下嵌套类:
class foo {
public:
class bar {
public:
int barMethod() const;
protected:
int barVar;
};
protected:
int fooVar;
};
然后在.cpp中,我可以以这种方式实现barMethod()
吗?
int foo::bar::barMethod() const {
return this->fooVar + this->barVar;
}
我的意思是: 嵌套类中的this
关键字是否是指层次结构中上游的所有类?
嵌套
类中的此关键字是否是指层次结构中上游的所有类?
否,仅限"当前"类。类嵌套主要是词汇问题。与Java不同,在Java中,内部类可以与封闭外部类的实例相关联,foo::bar
与任何其他未嵌套的类非常相似。
如果要将bar
的实例与foo
的实例相关联,则需要在bar
中捕获指向foo
的引用或指针。
相关文章:
- Visual Studio 2015:Extern "C" 和 "export" 关键字
- C++中的"inline"关键字
- 如何确保C++函数在定义之前声明(如override关键字)
- 谷歌模拟和覆盖关键字
- 结构体 S { int align; } 之间的区别;(struct 关键字后的名称)和 struct { int al
- 如果全局变量默认是外部变量,为什么要添加"extern"关键字?
- 当我从下面的代码中删除关键字 virtual 时,它可以正常工作,否则会出现错误。在这里"virtual"字的意义是什么?
- 为什么"delete"关键字不删除节点?
- 在 c++ 中正确定义"this"关键字?
- 这个额外的关键字在这个 c++ 类声明中是什么意思?
- 在 typedef 内部使用 const 关键字和在 typedef 外部使用 const 关键字之间有区别吗?
- C++ - 为什么这里需要'template'关键字?
- C++函数的关键字?
- 使用 'typename' 关键字将非类型视为依赖上下文中的类型
- "friend"关键字在C++中是什么意思?
- 声明C++数组(带或不带 "new" 关键字)
- 对齐和对齐的实际用例C++关键字
- 在 c++ 中三元运算符中不允许继续(关键字)吗?
- 考虑到其他好处,关键字'auto'真的有助于简化调试C++吗?
- 在 Objective-C++ -> EXC_BAD_ACCESS Error 中使用"new"关键字