c++ - 在此上下文中使用符号 (&) 的说明

标签 c++

经过几天的谷歌搜索,我终于放弃了,需要社区的一些帮助。

我是 C++ 的新手,因此决定从剖析这段代码开始:

A C++ program to get CPU usage from command line in Linux

在大多数情况下,除了最后一行中 & 符号的使用方式外,我可以推测出很多:

const int NUM_CPU_STATES = 10;

typedef struct CPUData {
    std::string cpu;
    size_t times [NUM_CPU_STATES];
} CPUData;

std::vector<CPUData> entries1;

const CPUData & e1 = entries[$i]

我能收集到的最接近的信息是它是位掩码或按位运算符。但无论哪种方式,我都无法理解它在这种情况下的使用方式。

编辑:感谢您的快速回复!我现在明白这是在创建一个引用。考虑到我认为它具有重要意义的任何语言的细微差别,让我无法理解它的是间距。

最佳答案

它正在声明一个常量引用。

/* data type */  /* varname */    /* data we are referencing */
const CPUData&        e1      =   entries[i]

所以e1直接引用了项'entries[i]'

关于c++ - 在此上下文中使用符号 (&) 的说明,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56247784/

相关文章:

c++ - POCO - PropertyFileConfiguration 保存方法始终使用 ":"作为分隔符写入

c++ - FFT和IFFT的长度

带有广度优先搜索的 JavaScript 二叉树

c++ - 痛饮 Perl : wrong ELF class

c++ - 查找数组中的某个最大值

c++ - 了解引用绑定(bind)

c++ - 我应该切换到 C++ I/O 流吗?

c++ - 为什么动态分配的内存需要类型转换?

c++ - C++中花括号后的分号

c++ - C++ boost::filesystem 如何检测路径是文件还是目录?