Handle/Body idiom class A { private: int i; public: void fct() const; } // -------------------------------------------------- class A { public: A() { }; ~A() { }; virtual void fct() { }; }; // -------------------------------------------------- class A { // ... }; class B : public A { // ... }; void fct( A a ) { /* ... */ }; int main() { B b; fct( b ); }; // -------------------------------------------------- #include #include int main() { for( int i=0; i<10; i++ ){ printf( "%i %f \n", i, sin( ((double)i)*M_PI ) ); } return 0; } // -------------------------------------------------- class A { public: void fct() { /* ... */ }; }; int main() { A *a = new A(); a->fct(); delete a; } // -------------------------------------------------- class A { // ... }; A& fct() { A a; // ... return a; } // -------------------------------------------------- #include int main() { char c; while( (c=getchar()) != EOF ){ putchar( c ); } } // -------------------------------------------------- class A { private: int upper; int lower; public: A( int i ) : lower( i ), upper( lower+1 ) { }; }; // -------------------------------------------------- int a[10000]; void f() { int i; for( i=0; i<10000; i++ ); a[i] = i; } // -------------------------------------------------- #include void extend( char *p ) { char *tmp = (char *)malloc( 20*sizeof(char) ); if( tmp ){ free(p); p = tmp; } } int main() { int i; char *p = (char *)malloc( 10*sizeof(char) ); if( p ){ extend( p ); } for( i=0; i<20; i++ ){ p[i] = 'q'; } return 0; } // --------------------------------------------------