小编use*_*735的帖子

c ++:使用模板在类中定义可变长度数组

我正在尝试构建一个MapV2类.在类中,我想将一个Cell对象数组作为私有成员(Cell是另一个类).我试图得到它,以便地图的大小由构造函数使用的模板参数分配.即,我试图得到类似于以下内容:

const size_t arraySize = 12;
MapV2<arraySize> myMapV2;
Run Code Online (Sandbox Code Playgroud)

这是我的文件Map.h:

#pragma once
#include <iostream>
#include "Cell.h"

template<size_t M, size_t N>
class MapV2
{

public:
    MapV2();
    ~MapV2();
private:
    Cell myMapV2[M*N];
};
Run Code Online (Sandbox Code Playgroud)

这是Map.cpp:

#include <iostream>
#include "MapV2.h"

MapV2<size_t M, size_t N>::MapV2()
{

}

MapV2::~MapV2()
{

}
Run Code Online (Sandbox Code Playgroud)

这是主要功能:

int main()
{
    const size_t xLength = 6;
    const size_t yLength = 8;
    MapV2 <xLength, yLength> Example;
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

但是当我尝试编译时,我得到以下一堆错误:


Compiling: MapV2.cpp
D:\Users\Vik\ModSim1a\MapV2.cpp:4: error: wrong number of template arguments (1, should be 2)

D:\Users\Vik\ModSim1a\MapV2.h:7: error: …
Run Code Online (Sandbox Code Playgroud)

c++ arrays templates

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

使用Matplotlib在Python中填充曲线和x轴之间的区域

我试图使用MatPlotLib简单地在Python的曲线下填充区域.

这是我的SSCCE:

import json
import pprint
import numpy as np
import matplotlib.pyplot as plt

y = [0,0,0,0,0,0,0,0,0,0,0,863,969,978,957,764,767,1009,1895,980,791]
x = np.arange(len(y))


fig2, ax2 = plt.subplots()
ax2.fill(x, y)

plt.savefig('picForWeb.png')
plt.show()
Run Code Online (Sandbox Code Playgroud)

附图显示了产生的输出.填充输出

有谁知道为什么Python没有填充x轴和曲线之间的整个区域?

我已经完成了Google和StackOverflow搜索,但找不到类似的例子.直觉上它似乎应该填满曲线下的整个区域.

python plot matplotlib

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

标签 统计

arrays ×1

c++ ×1

matplotlib ×1

plot ×1

python ×1

templates ×1