#include <iostream> using namespace std; void show(){ cout << "全局函数" << endl; } struct Stu { int a; void write_code(){ cout << "成员函数" << endl; } }; int main() { cout << "Hellotec测试 World!" << endl; // 指针的使用 // 普通指针 * p // 数组指针 (*parr)[3] 这是一个长度为 3 的数组指针 长得这样 [地址1,地址2,地址3] // 函数指针 (*pfunc)() void (*pfunc)() = show; // show or &show 都是可以的 pfunc(); // 成员函数指针 // 使用指针指向一个成员函数 成员函数必须使用 &取地址符号 // 成员函数指针的调用也是与成员函数调用是一样的 void (Stu::*ppfunc)() = &Stu::write_code; // 此时 成员函数指针是在 结构体 Stu 里面的 Stu stu; // stu.write_code(); // 成员函数调用 (stu.*ppfunc)(); // 成员函数指针的调用 // const 修改符 常量不可以修改 初始化的时候赋值 const int a = 100; // a = 1023; C中 const 定义的变量是可以通过 指针修改的 // const在C++中的用法 const int *p = &a; // 现在 const 修修饰的是指针的类型 // *p = 10000; // *p 是一个 read-only 只读属性 没有写的属性 所以不能直接赋值 int c = 30; p = &c; // p 是地址 *p 是取地址 p 可以赋值(重新指定地址) cout << *p << endl; int * const p2 = &a; // 此时 const 修饰的是 p (指针变量) 所以 p(地址不可以改变) *p2 是可以改变的 return 0; }
标签:std,cout,show,C++,三节课,指针 From: https://www.cnblogs.com/zhulongxu/p/18028290