#include<iostream> using namespace std; void add(int i, int j) { cout << "add" << i + j << endl; } class func { public: void jian(int i, int j) { cout << "jian" << i - j << endl; } }; int main() { void(*p)(int, int) = add; p(2, 3);//add5 (*p)(3, 4);//add7 (**************************p)(3, 4);//add7 (*&p)(3, 7);//add10 cout << (void*)p << " " << (void*)(*p) << endl; //00CA1334 00CA1334 cout << typeid(p).name() << endl; //void(__cdecl*)(int, int) cout<< typeid(*p).name() << endl; //void __cdecl(int, int) cout << typeid(******************p).name() << endl; //void __cdecl(int, int) cout << " " << typeid(&p).name() << endl; //void(__cdecl**)(int, int) cout<< typeid(*&p).name() << endl;//void(__cdecl*)(int, int) cout << "#####################################" << endl; auto fun1 = &func::jian; cout << typeid(fun1).name() << endl;//void(__thiscall func::*)(int, int) void(func::*func2)(int, int) = &func::jian;//void(__thiscall func::*)(int, int) cout << typeid(func2).name() << endl; func funcc; (funcc.*func2)(14, 12); cin.get(); return 0; }
c++高能指针
原创
©著作权归作者所有:来自51CTO博客作者土匪猿的原创作品,请联系作者获取转载授权,否则将追究法律责任
提问和评论都可以,用心的回复会被更多人看到
评论
发布评论
相关文章
-
C++智能指针
C++的指针包括原始指针和智能指针两种,智能指针是原始指针的封装,其优点是可以
c++ rust 开发语言 #include 智能指针 -
C++:智能指针
一,先请看为什么需要智能指针?void remole(std::string& str){ std::string * ps = new std::string(str); // ... str = *ps; // 这之后应
C++ shared_ptr unique_ptr auto_ptr 智能指针 -
[C++] 智能指针
智能指针
运算符 ios 编译器