函数模板中使用二维数组作为参数时的技巧

有多个非常相似的函数,只是参数的第2唯长度不一样,如:

void F(int a[][10],int b[][10])
{
}

void F1(int a[][20],int b[][20])
{
}

用函数模板来实现,

template <size_t  len> void TF(int aa[][len],int bb[][len])

看似没有问题,但是编译的时候会报错

error C2087: '<Unknown>' : missing subscript

解决办法:

把一个二维数组看成一个一维数组,每个元素指向一个长度为len的一维数组

template <size_t  len>
void TF(int (* aa)[len], int (* bb)[len])
{

}

然后调用的时候

int as[2][10] ;
int ti[3][10];

TF<10>(as,ti);

注意,要把那个len显示实参化,否则认不出来的


  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
第1章 LabVIEW概述 1.1 虚拟仪器(VI)概念 1.2 LabVIEW环境 1.2.1 LabVIEW程序和相关程序 1.2.2 LabVIEW启动屏幕 1.2.3 面板和框图窗口 1.2.4 前面板窗口工具栏 1.2.5 框图程序窗口工具栏 1.2.6 弹出菜单 1.2.7 模板 1.3 LabVIEW帮助选项 1.3.1 帮助窗口 1.3.2 在线帮助 1.4 小结、提示和技巧 第2章 创建、编辑和调试VI 2.1 创建程序 2.1.1 前面板 2.1.2 数字控件和指示器 2.1.3 布尔量控件和指示器 2.1.4 数据流编程 2.2 编辑技术 2.3 调试技术 2.4 小结、提示和技巧 习题 第3章 创建子VI 3.1 基本概念 3.2 创建图标和连接器 3.2.1 图标 3.2.2 连接器 3.2.3 控件和指示器的连线端口分配 3.3 使用子VI 3.3.1 打开、操作和修改子VI 3.3.2 子VI节点的在线帮助 3.4 把所选择部分直接创建为子VI 3.5 小结、提示和技巧 第4章 循环和图表 4.1 While Loop循环 4.2 波形图指示器 4.2.1 单曲线显示 4.2.2 多重曲线显示 4.2.3 布尔开关的机械操作 4.2.4 增加延器 4.3 移位寄存器 4.4 For Loop循环 4.5 小结、提示和技巧 习题 第5章 数组和图形 5.1 数组的基本概念 5.1.1 创建控制器数组和指示器数组 5.1.2 二维数组 5.1.3 创建常数数组 5.2 用循环建立数组 5.2.1 一维数组 5.2.2 创建二维数组 5.2.3 使用自动索引设置For循环的循环次数 5.3 数组功能 5.4 函数的多形态操作 5.5 曲线图 5.5.1 单一曲线图 5.5.2 多重曲线图 5.5.3 XY曲线图 5.6 小结、提示和技巧 习题 第6章 Case和Sequence结构 6.1 Case 结构 6.2 Sequence结构 6.3 Formula Node结构 6.4 小结、提示和技巧 习题 第7章 字符串和文件I/O 7.1 字符串 7.2 字符串功能 7.3 文件I / O 7.3.1 简单文件VIs 7.3.2 级文件VIs 7.3.3 高级文件I/O功能 7.3.4 向一个新的或已存在的文件存数据 7.3.5 从文件读数据 7.3.6 Spreadsheets(电子表格)字符串和文件I/O 7.3.7 表 7.4 小结、提示和技巧 习题 第8章 VI选项 8.1 VI的建立 8.1.1 执行选项 8.1.2 窗口选项 8.1.3 文档选项 8.2 SubVI节点设置 8.3 小结、提示和技巧 第9章 数据采集 9.1 概述 9.1.1 模拟输入 9.1.2 数据采集装置的参数设置 9.2 数据采集VI的组织结构 9.3 模拟输入 9.3.1 波形(Waveform)输入 9.3.2 把波形以文件形式存储在磁盘上 9.4 模拟输出 9.5 扫描多路模拟输入通道进行数据采集 9.6 数字输入和输出 9.7 小结、提示和技巧 习题 第10章 仪器控制 10.1 仪器控制 10.1.1 串行通信 10.1.2 IEEE 488(GPIB)概述 10.1.3 软件结构 10.1.4 GPIB VIs 10.1.5 出错报告 10.1.6 VISA 10.2 用LabVIEW编写仪器驱动程序 10.2.1 仪器驱动程序模板 10.2.2 仪器驱动程序所用的字符串函数 10.3 小结、提示和技巧 习题 第11章 应用实例 11.1 概述 11.2 实例一:低通滤波器测试 11.2.1 问题的提出 11.2.2 系统结构 11.2.3 系统的误差综合 11.3 实例二:标准电阻器测试 11.3.1 问题的提出 11.3.2 测试系统结构 11.3.3 软件实现 11.3.4 误差综合

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值