Pointer syntax: Difference between revisions

From vegard.wiki
Jump to navigation Jump to search
Content added Content deleted
(clarify names)
Line 6:
 
<source lang="C++">
return_type (*namefunction_name)(args...)
</source>
 
Line 14:
 
<source lang="C++">
member_type type::*membermember_name
</source>
 
Line 21:
<source lang="C++">
type obj;
obj.*membermember_name
</source>
 
<source lang="C++">
type *obj;
obj->*membermember_name
</source>
 
Line 34:
 
<source lang="C++">
return_type (type::*membermember_name)(args...)
</source>
 
Line 41:
<source lang="C++">
type obj;
(obj.*membermember_name)(args...)
</source>
 
<source lang="C++">
type *obj;
(obj->*membermember_name)(args...)
</source>
 

Revision as of 10:31, 10 February 2020

C/C++

Pointer to function

Declaration:

return_type (*function_name)(args...)

Pointer to member

Declaration:

member_type type::*member_name

Dereference:

type obj;
obj.*member_name
type *obj;
obj->*member_name

Pointer to member function

Declaration:

return_type (type::*member_name)(args...)

Dereference:

type obj;
(obj.*member_name)(args...)
type *obj;
(obj->*member_name)(args...)