gpt4 book ai didi

c++ - C++ 中 void(*)() 和 void(&)() 的区别

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:44:08 25 4
gpt4 key购买 nike

<分区>

在此示例代码中,func1void (*)(int, double) 的类型,funkyvoid(&)(int, double)

#include <iostream>

using namespace std;

void someFunc(int i, double j) {
cout << i << ":" << j << endl;
}

int main(int argc, char *argv[]) {

auto func1 = someFunc;
auto& func2 = someFunc;

cout << typeid(func1).name() << endl;
cout << typeid(func2).name() << endl;

func1(10, 20.0);
func2(10, 30.0);
}

输出显示差异:

PFvidE
FvidE
10:20
10:30

实际上,这两种类型之间有什么区别?

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com