![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C++
文章平均质量分 54
braveone3198
这个作者很懒,什么都没留下…
展开
-
虚函数尽量避免设定默认值,如果设定了,子类重写不要变更其默认值
Item 37:不要重写父类函数的默认参数 类继承代码如下: class A { public: A(int d) :data(d) { } A(const A& other){ data = other.data; } virtual void test(int i = 2){ cout << "A test..." << i << endl; } private: int data; }; class B : public A {原创 2021-04-07 19:16:44 · 335 阅读 · 0 评论 -
void(*set_message_handler( void(*f)() ))() 解析
首先需要了解c++操作符的优先级 “()”的优先级高于”*“的优先级,结合性 函数指针和指针函数的区别 函数指针:本质上是指针,只不过这个指针指向了一个函数。 void (*pFunc)(int); ()操作符结合性是从左到右,(*pFunc)标明pFunc本质上是指针,后边的()标识这个指针指向的是一个函数,函数返回值为void,入参为int。 指针函数:本质上是函数,只不过返回值为指针类型的数据。 void* Func(); Func()表明Func本质上是一个函数,返回类型为void*,没有入..原创 2021-01-13 16:33:50 · 441 阅读 · 0 评论