当前位置:首页 C++ > 正文

C++中的.和::和:和->的区别

作者:野牛程序员:2024-03-15 14:47:06 C++阅读 2153
C++中的.和::和:和->的区别

.用于访问类的实例成员,.是一个成员访问运算符。

::用于访问类的静态成员、命名空间的成员或者枚举类型的成员,::是作用域解析运算符。

:用于指定基类的构造函数的初始化列表,或者用于分隔命名空间、类名和标签。

->用于访问类的指针成员,->是指针成员访问运算符。


#include <iostream>
using namespace std;

// 定义一个类
class MyClass {
public:
    int member_var;
    static int static_var;
    
    // 构造函数
    MyClass(int value) : member_var(value) {}
    
    // 静态成员函数
    static void staticFunc() {
        cout << "This is a static member function." << endl;
    }
    
    // 成员函数
    void memberFunc() {
        cout << "This is a member function." << endl;
    }
};

// 定义类的静态成员变量
int MyClass::static_var = 100;

int main() {
    // 创建类的实例
    MyClass obj(42);
    
    // 使用"."访问实例成员变量和成员函数
    cout << "Member variable value: " << obj.member_var << endl;
    obj.memberFunc();
    
    // 使用"."访问静态成员变量和静态成员函数
    cout << "Static variable value: " << MyClass::static_var << endl;
    MyClass::staticFunc();
    
    // 使用"::"访问命名空间的成员
    cout << "Value of PI: " << std::acos(-1) << endl;
    
    return 0;
}


野牛程序员教少儿编程与信息学奥赛-微信|电话:15892516892
野牛程序员教少儿编程与信息学竞赛-微信|电话:15892516892
  • 最新推荐

    热门点击