例如要传入一个16字节大小的数组,传统的做法是参数里面写unsigned char*
可以改用如下方法:

typedef const unsigned char  (&const_block) [16];
typedef unsigned char   (&block)  [16];

void test( const_block input, block output );

编译器检查会保证传入的只能是固定大小的数组,不能是指针或者大小与指定值不同的数组。