注册 登录
编程论坛 C++教室

求助C++动态数组的相关问题!

Lawlite 发布于 2017-03-13 21:32, 1343 次点击
要求编写C++函数,找寻并输出一个(自己建立的)m×n二维数组的最大/小值。
2 回复
#2
rjsp2017-03-14 09:47
要将问题描述清楚,比如 m、n 是不是编译期常数?如果不是,那所谓的“二维数组”是C/C++标准的定义,还是自己瞎定义的?
最好将使用这个函数的代码贴出来,让别人知道你想怎么用,是怎么回事。

程序代码:
#include <cstddef>

template<typename T, size_t M, size_t N>
T maxofmtx( const T (&mtx)[M][N] )
{
    T ret = mtx[0][0];
    for( size_t r=0; r!=M; ++r )
        for( size_t c=0; c!=N; ++c )
            ret = ret<mtx[r][c] ? mtx[r][c] : ret;
    return ret;
}

#include <iostream>
using namespace std;

int main( void )
{
    int a[3][3] = { 1, 2, 3
                  , 6, 5, 4
                  , 7, 9, 8 };

    cout << maxofmtx(a) << endl;
}
#3
Lawlite2017-03-15 19:23
看来我应该先弄清楚问题本身,再提问。
1