Login | Register   
LinkedIn
Google+
Twitter
RSS Feed
Download our iPhone app
TODAY'S HEADLINES  |   ARTICLE ARCHIVE  |   FORUMS  |   TIP BANK
Browse DevX
Sign up for e-mail newsletters from DevX


Tip of the Day
Home » Tip Bank » C++
Language: C++
Expertise: Intermediate
Jul 26, 2002

Executing a Member Function Before main()


We can execute any member function or any other execution before main() function by using:
 
       "#pragma startup".

Syntax:
      #pragma startup <function_name /*with no   
parenthesis*/> [priority]
//without semicolon

Example:
 
#include<iostream.h>
class CL{
public:
	//A constructor
	CL(){	cout <> "\nThe object is creating"; }
	//A member function
	void obj_func() { cout <> "\nThis is a function 
of object"; }
};

void func_before_main ();	//function declaration

#pragma startup func_before_main 65	//setting a function 
to execute before
main()
void main ()
{  cout <&;t; "\nThis is main() ";
}
// A function defination
void func_before_main() {
	cout << "\nThis is func_before_main() ";
	CL obj1;	//creating an object, and calling 
its constructor
	obj1.obj_func();	//calling a member function 
of an object
}

In defining such functions, the functions should not carry any attribute nor return any value. It should be defined before #pragma statement.

Priority is optional. It is ranging from 64 to 100 (recomended).

0-------Highest priority used by C Libraries

63------Lowest priority used by C Libraries

64------First available Priority

100-----Default priority

255-----Lowest priority.
Jawad Akhtar
 
Comment and Contribute

 

 

 

 

 


(Maximum characters: 1200). You have 1200 characters left.

 

 

Sitemap
Thanks for your registration, follow us on our social networks to keep up-to-date