mirror of
https://github.com/Light-City/CPlusPlusThings.git
synced 2026-02-11 06:27:22 +08:00
support bazel complie this project and format code.
This commit is contained in:
@@ -15,14 +15,22 @@
|
||||
- 作用域不受限,会容易引起命名冲突。例如下面无法编译通过的:
|
||||
|
||||
```c++
|
||||
#include <iostream>
|
||||
using namespace std;
|
||||
|
||||
enum Color {RED,BLUE};
|
||||
enum Feeling {EXCITED,BLUE};
|
||||
|
||||
int main()
|
||||
enum Color
|
||||
{
|
||||
RED,
|
||||
BLUE
|
||||
};
|
||||
enum Feeling
|
||||
{
|
||||
EXCITED,
|
||||
BLUE
|
||||
};
|
||||
|
||||
int main()
|
||||
{
|
||||
Color a = BLUE; // error
|
||||
Feeling b = EXCITED;
|
||||
std::cout << a << ":" << b << std::endl;
|
||||
return 0;
|
||||
}
|
||||
```
|
||||
@@ -106,7 +114,7 @@ char c3 = static_cast<char>(Color3::RED);
|
||||
|
||||
## 类中的枚举类型
|
||||
|
||||
有时我们希望某些常量只在类中有效。 由于#define 定义的宏常量是全局的,不能达到目的,于是想到实用const 修饰数据成员来实现。而const 数据成员的确是存在的,但其含义却不是我们所期望的。
|
||||
有时我们希望某些常量只在类中有效。 由于#define 定义的宏常量是全局的,不能达到目的,于是想到使用const 修饰数据成员来实现。而const 数据成员的确是存在的,但其含义却不是我们所期望的。
|
||||
|
||||
const 数据成员只在某个对象生存期内是常量,而对于整个类而言却是可变的,因为类可以创建多个对象,不同的对象其 const 数据成员的值可以不同。
|
||||
|
||||
|
||||
Reference in New Issue
Block a user