最近做题遇到一种语法:
struct node{
int num[M];
int* operator[](int x){
return num + x * m;
}
}a;
以这种方式将二维数组转成一维的。
求巨佬详细讲一下 a[i][j]
对应的 num
的下标(方便计算要开多大)以及用这种语法有没有什么需要注意的?
还有能否用重载中括号的方式实现
sturct node{
int h,t,num[M];
}q;
通过访问 q[i]
访问 q.num[i]
?具体应该怎么改?
百度找到的资料不太看得懂,求解惑!