VVC代码解读day1 enc.app main函数——命名空间

第94行 df::program_options_lite::Options opts;

在360浏览器c++收藏夹 c++命名空间有详细解释

::是一个新符号,称为域解析操作符,在C++中用来指明要使用的命名空间。

如果一个文件下有两个相同名字的变量会发生冲突,但如果这两个变量在两个不同的命名空间中,就不会有冲突:

namespace Li{

//小李定义的变量

file a = 0;

}

namespace Wang{

//小王定义的变量

file a = 0;

}

这样两个变量都可成功编译

命名空间里面可以包含变量、函数、类、typedef、#define 等,最后由{ }包围。

使用变量、函数时要指明它们所在的命名空间。

Li::a = 1; //指明了要是用命名空间Li

cout << a << endl;

df::program_options_lite::Options opts

即这里的df和program_options_lite都是命名空间,program_options_lite是df中的命名空间。program_options_lite.h中定义了与文件解析有关的一些类和一些全局函数。

Options opts = struct Options opts 省略了struct,options是定义的一个结构体,opts是变量名

你可能感兴趣的:(视频编解码,c++)