小编EzR*_*d3r的帖子

C++ operator []魔术

我遇到了一种奇怪的方式,对阵列元素的吸引力,并认为它是一个错误,但它的工作原理.你能解释它是如何工作的吗?

#include <iostream>
int main()
{
  int a[] = {1,2,3,4};
  std::cout << 1[a];
}
Run Code Online (Sandbox Code Playgroud)

c++

5
推荐指数
2
解决办法
256
查看次数

带有 std::map 的模板函数给出错误:变量或字段声明为无效

尝试创建包含 std::map 元素的模板函数时,会出现此错误。我知道地图有四个模板参数,但两个有默认值,无法理解我必须做什么。

template<typename key, typename val> void arr_out (std::map<key, val>::iterator begin, std::map<key, val>::iterator end)
{
    std::cout << "map: " << std::endl;
    while(begin != end)
    {
        std::cout << (*begin).first << ": " << (*begin).second << std::endl ;
        begin++;
    }
    std::cout << std::endl;
}
Run Code Online (Sandbox Code Playgroud)
  • 错误:变量或字段“arr_out”声明为无效
  • 错误:在“开始”之前应为“)”
  • 错误:在“开始”之前应为“)”

c++

1
推荐指数
1
解决办法
229
查看次数

标签 统计

c++ ×2