Wednesday, February 2, 2011

Token-Pasting

Ang mga parameter o argument sa usa ka macro gitawag kana siya og "token". Kung kaning token gamitan nimo og og double-number-sign o gitawag na siya og token pasting, pasabot na ang token o parameter sa macro imo e sumpay. Kung aduna koy macro na #define hi(n), ang n mao ang token kung ako nang e sumpot gamit ang double-number-sign sa usa ka string pareho ani val##n, iya nang e perform sama sa usa ka variable o method sa function.

Example:

#include <stdio.h>;

#define display(n) printf("macro value: %d\n", val##n);


int val1 = 5;
int val2 = 10;

int main()
{
display(1); //pareho ra sa printf("macro value %d\n", val1);
display(2); //pareho ra sa printf("macro value %d\n", val2);

return 0;
}

2 comments:

  1. suway nimo ang boost c++ .. nindot ni siya ..

    ReplyDelete
  2. oo nindot daw ang boost c++..no need naka mo reinvent sa wheel

    ReplyDelete