在 C++ 中, ".","->",":" 和 "::" 都是运算符,它们的作用是明显不同的,但是初学者很容易被其迷惑
1."." 是成员访问运算符,用于访问类或结构体中的成员变量和成员函数。
class A {
public:
int x;
void func() { cout << "A::func()" << endl; }
};
int main() {
A a;
a.x = 1; // 访问成员变量 x
a.func(); // 调用成员函数 func
return 0;
}
2."->" 是指针访问运算符,用于访问指针所指向对象中的成员变量和成员函数。
class A {
public:
int x;
void func() { cout << "A::func()" << endl; }
};
int main() {
A *p = new A;
p->x = 1; // 访问指针所指向对象的成员变量 x
p->func(); // 调用指针所指向对象的成员函数 func
return 0;
}
3.":"是类成员初始化运算符,用于在构造函数的初始化列表中初始化类的成员变量。
class B {
public:
int x;
B(int x) : x(x) {};
};
int main() {
B b(1); // 调用构造函数并初始化成员变量 x 为 1
return 0;
}
4."::"是域运算符,用于访问类的静态成员,如静态变量和静态函数。
class A {
public:
static int x;
static void func() { cout << "A::func()" << endl; }
};
int A::x = 1; // 初始化静态变量 x
int
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)