【发布时间】:2020-06-23 06:05:15
【问题描述】:
大家, 一件事让我很忙是函数指针 这两个代码有什么区别?
#include<iostream>
class test
{
private:
// some data members
public:
void *print() **OR** void Print()
{
// print something
}
}
为什么我们有指针函数? 它们有什么区别?
最好的问候
【问题讨论】:
-
void *print() 返回 void 指针 (void * ) 而 void Print() 不返回任何内容
-
更好地阅读:它是
void或void*而不是print()或*print()。星号属于函数的返回类型。您可以通过编译代码来确认这一点。您应该会收到类似no return statement in function returning non-void的警告,带有“asterix-version”。 -
我确信已经有一个关于这个的问题 - 你在问返回 void 指针和不返回任何东西之间的区别。换句话说,
*属于void,而不是函数Print。 -
@Shadow 那是“星号”,Asterix 是高卢战士 ;)
标签: c++ function class pointers