c++中的基本知识点

1 class和struct的区别和联系

在c++中,class和struct只有一点不同,它们是可以完全替代使用的。唯一的不同在于,class中的成员默认是private的,而struct中默认是public的。

2 指针和引用的不同

2.1 引用在编译后,本质上还是指针。

2.2 引用定义时必须被赋值,赋值之后不能改变

也就是说,它一出生就要指向一块内存,并且永远都不能改变,或者或者说,它出生就要指向一个对象,并且从一而终。

2.3 不存在null的引用

因此引用很安全。

3 global namespace和前缀"::"

每个symbol都有一个namespace。A symbol, by default, exists in a global namespace, unless it is defined inside a block starts with keyword namespace, or it is a member of a class, or a local variable of a function。

如果在一个namespace中定义了一个和global namespace同名的变量,那么在该namespace中访问这个global namespace的变量的时候就要在这个变量前面加上“::”。

原文地址:https://www.cnblogs.com/hustdc/p/6485993.html