Sponsored Content
Top Forums Programming How to return void function pointer Post 302177652 by umen on Saturday 22nd of March 2008 05:21:49 AM
Old 03-22-2008
How to return void function pointer

Hello all
im trying to build function that will return void function pointer
what is mean is ( not working )
the main function
PHP Code:
void myClass::getFunction(int type){
    if(
type==1)
        return &
myClass::Test1;
    if(
type==2)
        return &
myClass::Test2;
}

void myClass::Test1(){
    
printf("nada1");
}

void myClass::Test2(){
    
printf("nada2");

what im doing wrong here ?
 

10 More Discussions You Might Find Interesting

1. Programming

Problem with function which reutrns pointer to a value

i have a function: char *pcCityIdToCountryName(ADMIN_DB_DATA *pstHEader, unit uiCityID) this returns a pointer to CountryName if cityId is given. to retrieve countryname i give: char *CountryName; CountryName = pcCityIdToCountryName(..................); but when i compile it is giving :... (5 Replies)
Discussion started by: jazz
5 Replies

2. Programming

pass a pointer-to-pointer, or return a pointer?

If one wants to get a start address of a array or a string or a block of memory via a function, there are at least two methods to achieve it: (1) one is to pass a pointer-to-pointer parameter, like: int my_malloc(int size, char **pmem) { *pmem=(char *)malloc(size); if(*pmem==NULL)... (11 Replies)
Discussion started by: aaronwong
11 Replies

3. Programming

Function pointer to inline function ?

Hi. Problem: I have to parse the payload of a packet. The payload could be in Big Endian Format (network byte order) or little. That depends on a flag present in the header of the packet. Solution: A horrible solution could be to check for that flag everytime I have to read a field in the... (11 Replies)
Discussion started by: emitrax
11 Replies

4. Programming

Function Returning Pointer

Hi guys. how a functions such fdopen, ... can return pointer? are these functions use static memory(variables)? (6 Replies)
Discussion started by: majid.merkava
6 Replies

5. HP-UX

converting void pointer to pthread_t on HPUX Itanium

i am trying to convert void pointer to pthread_t on hpux-itanium 64 bit which fails as below "src/file.cpp", line 88: error #2171: invalid type conversion pthread_t tid = reinterpret_cast<pthread_t>(m_threadId); 1 error detected in the compilation of "src/file.cpp" ... (0 Replies)
Discussion started by: skyineyes
0 Replies

6. Programming

void pointer

hi guys! Is there such a thing as double void pointer dynamic allocation? And if so is it something like this? int n; void** a; a=malloc(n*sizeof(void*)); (12 Replies)
Discussion started by: vlm
12 Replies

7. Programming

Parameter passing to function with void * as Argument

Earlier I had one structure C typedef struct c { int cc; }CS; I used to call a library function say int GetData(CS *x) which was returning me the above structure C with data. GetData(CS *x) Function call used to be like: CS CSobj; GetData(&CSObj); Now there are two... (12 Replies)
Discussion started by: rupeshkp728
12 Replies

8. Programming

Malloc to void pointer fails

I have a function to which I will pass a struct ID and it will return me a string. I will pass a pointer to store the name string and that pointer will be allocated memory by the function called. int ConvertIDToName(void *id, void *name, size_t *size) { int status = 0; ... (5 Replies)
Discussion started by: rupeshkp728
5 Replies

9. Shell Programming and Scripting

Return: can only `return' from a function or sourced script

Not sure where the problem is. I can run the script without any issue using the following command. . /opt/app/scripts/cdc_migration.sh But it fails with the below error when I try it this way /opt/app/scripts/cdc_migration.sh /opt/app/scripts/cdc_migration.sh: line 65: return: can only... (1 Reply)
Discussion started by: svajhala
1 Replies

10. Shell Programming and Scripting

Function - Make your function return an exit status

Hi All, Good Day, seeking for your assistance on how to not perform my 2nd, 3rd,4th etc.. function if my 1st function is in else condition. #Body function1() { if then echo "exist" else echo "not exist" } #if not exist in function1 my all other function will not proceed.... (4 Replies)
Discussion started by: meister29
4 Replies
SL(3)								   SL Reference 							     SL(3)

NAME
sl - a small and flexible linked list implementation DESCRIPTION
`sl' provides a generic implementation of singly-linked lists and stacks. `sl' does not do extra allocations behind the scenes for placeholder nodes, yet users of the library can define their node structure almost any way they want. The one important thing is that the ->next member is the first member of the structure. FUNCTIONS
void *sl_push(void *root, void *p) Push "p" onto the list "root". Return the new list. void *sl_pop(void *root) Pop a node from a list. Return the pop'ed item, or NULL if the list is empty. Note: this function takes a pointer to a pointer to a node as its argument. C does not allow "void **" to be used as a generic pointer to pointer type. However, since "void *" is a generic pointer, it can also point to a pointer to pointer. void *sl_unshift(void *root, void *p) Shift a node onto the `far end' of a list. This function can be used to append a list to another. The new list is returned. void *sl_shift(void *) Shift a node from the `far end' of a list. Returns the item shifted off the list, or NULL if the list is empty. Note: this function takes a pointer to a pointer to a node as its argument. C does not allow "void **" to be used as a generic pointer to pointer type. However, since "void *" is a generic pointer, it can also point to a pointer to pointer. void *sl_reverse(void *root) Returns the reversed list. void *sl_map(void *root, int (*func)(void *, void *), void *data) Map a function, "func", to every element in a list. The "data" is handed to "func" along with each node. This function can be used for a sequential search of a list of nodes. This function returns NULL on normal operation. If "func" returns non-zero, a pointer to the current node will be returned. void *sl_filter(void *root, int (*func)(void *, void *), void *data) "func" is called once for each node in the list, having the node itself passed as the first argument; "data" is passed as the second argument. If "func" returns a positive value the current node will be extracted from the passed-in list and stored in a temporary list. When we get to the end of the passed-in list, the temporary list is returned. If "func" returns a negative value the same happens as when a positive value is returened but in addition any further traversal of the passed-in array is terminated and the current temporary list is returned immediately. You can return the first 5 elements that matches a certain criteria by maintaining a counter in "data" and return 1 until the fifth node is found, then return -1. Note: this function takes a pointer to a pointer to a node as its argument. C does not allow "void **" to be used as a generic pointer to pointer type. However, since "void *" is a generic pointer, it can also point to a pointer to pointer. void *sl_split(void *root) Split a list roughly on the middle; return a pointer to the second half. void *sl_merge(void *p1, void *p2, int (*cmp)(void *, void *)) Merge two sorted lists and keep the list sorted. This function is the heart of the mergesort routine. Thanks to CB Falconer for this code. void *sl_mergesort(void *root, int (*cmp)(void *, void *)) Return the sorted list. int sl_count(void *p) Returns the number of elements in a list. void sl_free(void *root, void (*func)(void*)) A macro that just calls sl__free(). This is necessary because sl_free() is a defined function on OS-X. void sl__free(void *root, void (*func)(void*)) Free a list of nodes. Takes an optional argument, @p func, used to free the node if it is defined. AUTHOR
Stig Brautaset <stig@brautaset.org> CREDITS
Thanks to Thomas Stegen of comp.lang.c for suggesting the "void*" trick employed in `sl_pop()` and `sl_shift()`. Thanks to CB Falconer of comp.programming for help on the sorting code. Richard Spindler suggested what became the "sl_filter()" function. COPYRIGHT
Copyright (C) 2003,2004,2005 Stig Brautaset This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. POD ERRORS
Hey! The above document had some coding errors, which are explained below: Around line 58: =cut found outside a pod block. Skipping to next block. simplelist 0.3.4 2006-12-21 SL(3)
All times are GMT -4. The time now is 01:46 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy