随笔分类 - c++
摘要:最近干活的时候,写一个UT的时候遇到了跨文件友元失效的问题,仔细检查之后发现是两个类的命名空间不一致。申明的友元类是另一个文件里面的公共域的内容,于是改成了::XXX的形式。依旧编译不过,和同学聊了一下,考虑用了extern关键字,依旧编译报错,无法识别这个类。查了一下,extern 只定义不申明,
阅读全文
摘要:1. 左值、右值 C++中所有的值都必然属于左值、右值二者之一。左值是指表达式结束后依然存在的持久化对象,右值是指表达式结束时就不再存在的临时对象。所有的具名变量或者对象都是左值,而右值不具名。很难得到左值和右值的真正定义,但是有一个可以区分左值和右值的便捷方法:看能不能对表达式取地址,如果能,则为
阅读全文