30/09/2018, 16:55

Có kiểu truyền tham số này trong C++ không?

Mở mấy cái file plugin trong bộ add-on game ra thấy kiểu khai báo hàm như thế này:

native ServerCommand(const String:format[], any:...);

cái tham số any:…

Nguyễn Minh Dũng viết 19:08 ngày 30/09/2018

Có chớ, đó là va_list. Còn cái chữ any: chắc là macro thôi

// any: thực chất là rỗng
#define any: 

Ví dụ cách sử dụng va_start

/* va_start example */
#include <stdio.h>      /* printf */
#include <stdarg.h>     /* va_list, va_start, va_arg, va_end */

void PrintFloats (int n, ...)
{
  int i;
  double val;
  printf ("Printing floats:");
  va_list vl;
  va_start(vl,n);
  for (i=0;i<n;i++)
  {
    val=va_arg(vl,double);
    printf (" [%.2f]",val);
  }
  va_end(vl);
  printf ("\n");
}

int main ()
{
  PrintFloats (3,3.14159,2.71828,1.41421);
  return 0;
}
Bài liên quan
0