只要满足两个条件,此问题就在C中有解决方案:
d在编译时已知值,并且d 具有预定义的限制,例如10您可以通过定义一系列宏并"粘贴" d作为标记的值来解决此问题:
#define D_PTR(d,T) D_PTR##d(T)
#define D_PTR0(T) T
#define D_PTR1(T) T*
#define D_PTR2(T) T**
#define D_PTR3(T) T***
...
#define D_PTR10(T) T**********
Run Code Online (Sandbox Code Playgroud)
现在你可以d像这样声明-dimension指针:
D_PTR(5,int) ptr5 = NULL;
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
107 次 |
| 最近记录: |