09-28-2009
Corona is correct - you should leave optimization to compilers when complex makes code harder to read and maintain. And the speed return is minimal.
General tips:
If you have already not done so - try profiling your code.
Algorithm changes usually provide far better optimization than tweaks like function pointers. This is the reason for seemingly odd algorithms like Duff's machine. And threading.
Turn on optimization for your compiler - things like loop unrolling may provide a lot of speed increase.
10 More Discussions You Might Find Interesting
1. Programming
using namespace std;
void g();
class A {
public :
A() { g();g();g(); cout << "Constructor of A"<< endl ;}
};
inline void g(){ cout << "vijay" <<endl; }
int main() {
A a;
}
when i use inline i get size 303488 Aug 31 12:05 a.out*
when not using inline i get size 303572 Aug 31... (1 Reply)
Discussion started by: vijaysabari
1 Replies
2. Programming
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
3. Programming
Hello all
im trying to build function that will return void function pointer
what is mean is ( not working )
the main function
void * myClass::getFunction(int type){
if(type==1)
return &myClass::Test1;
if(type==2)
return &myClass::Test2;
}
void myClass::Test1(){... (1 Reply)
Discussion started by: umen
1 Replies
4. Programming
#include <iostream>
using namespace std;
class A
{
public:
int Getvalue() { return i;}
private:
int i;
};
int main()
{}
The above code compiles properly in g++ or in any other C++ compiler.
BUT, the variable 'i' is used (in 'return i' statement) before it is... (1 Reply)
Discussion started by: deepthi.s
1 Replies
5. Programming
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
6. Programming
if i create an array of pointers to a structure "struct node" as:
struct node *r;
and create "n" number of "linked lists" and assign it to the various struct pointers r using some function with a return type as structure pointer as:
r=multiplty(.......) /*some parameters*/
is... (2 Replies)
Discussion started by: mscoder
2 Replies
7. Programming
Hi,
In the below C code,
#include <stdio.h>
void print() {
printf("Hello\n");
}
int main() {
void (*f)() = (void (*)()) print;
f();
(*f)();
}
I wonder, how the syntaxes "f()" and "(*f)()" are treated as same without any error? Is this an improvement or ANSI/ISO... (1 Reply)
Discussion started by: royalibrahim
1 Replies
8. Programming
Have difficulty to understand this pure C code to only print vowels twice from input string. Questions are commented at the end of each place.
#include <stdio.h>
#include <stdlib.h>
#include <assert.h>
#include <limits.h>
/*
*Demonstrate the use of dispatch tables
*/
/*Print a char... (11 Replies)
Discussion started by: yifangt
11 Replies
9. Programming
I am passing a char* to the function "reverse" and when I execute it with gdb I get:
Program received signal SIGSEGV, Segmentation fault.
0x000000000040083b in reverse (s=0x400b2b "hello") at pointersExample.c:72
72 *q = *p;
Attached is the source code.
I do not understand why... (9 Replies)
Discussion started by: jose_spain
9 Replies
10. Shell Programming and Scripting
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
LEARN ABOUT HPUX
cfgetispeed
cfspeed(3C) cfspeed(3C)
NAME
cfgetospeed(), cfsetospeed(), cfgetispeed(), cfsetispeed() - tty baud rate functions
SYNOPSIS
DESCRIPTION
These functions set and get the input and output speed codes in the termios structure referenced by termios_p. The termios structure con-
tains these speed codes representing input and output baud rates as well as other terminal related parameters. Setting the parameters on a
terminal file does not become effective until is successfully called.
returns the output speed code from the
termios structure referenced by termios_p.
sets the output speed code in the
termios structure referenced by termios_p to speed. The speed code for a baud rate of zero, is used to termi-
nate the connection. If is specified, the modem control lines are no longer asserted, which normally discon-
nects the line.
returns the input speed code from the
termios structure referenced by termios_p.
sets the input speed code in the
termios structure referenced by termios_p to speed.
RETURN VALUE
returns the output speed code from the termios structure referenced by termios_p.
returns the input speed code from the termios structure referenced by termios_p.
and return zero upon successful completion. Otherwise, they return -1 and set to indicate the error.
ERRORS
and fail when the following condition is encountered:
[EINVAL] The value of speed is outside the range of possible speed codes as specified in
WARNINGS
and can be used to set speed codes in the termios structure that are not supported by the terminal hardware.
SEE ALSO
tcattribute(3C), thread_safety(5), termio(7).
STANDARDS CONFORMANCE
cfspeed(3C)