char (&guid)[16] PK char &guid[16] 区别在哪
如题,哪位GG可以给小女子解释下么?
[解决办法]
cout < < sizeof(guid) < < endl;
cout < < typeid(guid).name() < < endl;
试一下
[解决办法]
char (&guid)[16] 是对char guid[16]这个数组的引用,即再定义一个char guidtemp[16]的数组时,可以这样赋值,char (&guid)[16] = guidtemp;
char &guid[16] 在VS环境下是错误的写法,编译不过,字面上看来是char &即char的引用所组成的数组,但实际上数组名为指针,而指向引用的指针是不存在的,故没有引用数组这一说
[解决办法]
楼上的正解
这就像
char*p[10]和char(*p)[10]一样。
只是上面两个定义都是允许的.
[解决办法]
不存在“装引用的数组”--C++标准明确禁止