C++中班级的"member"到底是什么?
What exactly is a "member" of a class in C++?
我是C++新手,有Java和Python方面的经验。我试着在Stack上搜索这个问题一段时间,但没有发现任何类似的问题(尽管这可能是因为我对C++的粗略了解)。
我一直在读C++初级读本,直到偶然发现C++中的"成员"。我可以理解Java中类的概念,但我不确定什么是"成员"
成员只是一个类的实例吗?如果是这样的话,为什么一个类中的变量也被认为是成员(在初级读本中,一本书的类的ISBN号被认为是一个成员)?
有人能给出C++中"成员"的一般定义吗?
成员是属于类的某个实体。
如果一个类有一个函数,那么它就是一个成员函数——你可能知道它是"一个方法"
如果一个类有一个变量,那么它就是一个成员变量——您可能知道它是"一个属性"
int a;
void f () {};
class A{
int m_A;
void m_F(){}
}
a
是一个全局变量
CCD_ 2是一个全局函数m_A
是类A
的成员变量或"属性"m_F
是类A
的成员函数或"方法"
成员被定义为类中的变量和函数。
类中定义的变量有时被称为成员变量。类似地,函数可以称为成员函数。除此之外,没有太多内容。
根据C++标准(9.2类成员)
1类定义中的成员规范声明了完整集班级成员;不能在其他位置添加任何成员。的成员类是数据成员、成员函数(9.3)、嵌套类型,以及枚举器。数据成员和成员函数是静态的或非静态;参见9.4。嵌套类型是类(9.1、9.7)和类中定义的枚举(7.2),以及声明的任意类型通过使用typedef声明(7.1.3)作为成员类中定义的无范围枚举(7.2)是班除非用于宣布朋友(11.3)或介绍基类的成员的名称转换为派生类(7.3.3),成员声明声明类的成员,并且每个这样的声明成员声明应声明班不得在成员规范,嵌套类或成员类除外模板可以声明,然后在以后定义,除了枚举可以通过不透明的枚举声明引入,并且后来用枚举说明符重新声明。
班级成员也是
using-declaration
static_assert-declaration
template-declaration
alias-declaration
我想谷歌搜索会起作用,因为我只搜索了5秒钟:
类是数据结构的扩展概念:与数据结构一样,它们可以包含数据成员,但也可以包含作为成员的函数。
您可以在此处查看更完整的定义:http://www.cplusplus.com/doc/tutorial/classes/
简而言之,数据成员(即类的变量)和函数都是类的成员。
在我记忆中,java成员是完全相同的。
- 为不同配置设置MSVC_RUNTIME_LIBRARY的正确方法是什么
- C++避免重复声明的语法是什么
- 在C++中,将大的无符号浮点数四舍五入为整数的最佳方法是什么
- 实现无开销push_back的最佳方法是什么
- C++从另一个类访问公共静态向量的正确方法是什么
- "throw expression code" 1e7 >返回 d 是什么?投掷标准::overflow_error( "too big" ) : d;意味 着?
- C++中名称篡改的目的是什么
- 在 c++ 中拥有一组结构的正确方法是什么?
- 这个指针和内存代码打印是什么?我不知道是打印垃圾还是如何打印我需要的值
- 是什么阻止DOMTimerCoordinator::NextID进入无休止的循环
- 出现这种错误的原因是什么"invalid use of non-static data member "
- 这是什么意思:"member reference type 'Human *' is a pointer; did you mean to use '->'?"
- [class.union]/3 注释中"Absent default member initializers, ..."的句子的目的是什么?
- "invalid use of non static member function" 这是什么?
- C++11 中的"member initializer"是什么?
- "error : a nonstatic member reference must be relative to a specific object"是什么意思?
- C++`int*class::*member=NULL`编译,原因是什么
- "member function already defined or declared" - 这是什么意思?
- C++中,"SomeStruct"是结构,"member"是其成员,"&SomeStruct::member"是什么意思?
- C++中班级的"member"到底是什么?