如何自定义C++的table类

   2024-09-30 8020
核心提示:要自定义一个C++的表格(table)类,你需要先确定你的表格类需要哪些功能。例如,你可能需要添加、删除和修改行和列,以及获取和

要自定义一个C++的表格(table)类,你需要先确定你的表格类需要哪些功能。例如,你可能需要添加、删除和修改行和列,以及获取和设置单元格的值。下面是一个简单的示例,展示了如何创建一个基本的表格类:

#include<iostream>#include<vector>class Table {public:    // 构造函数    Table(int rows, int cols) : numRows(rows), numCols(cols) {        data.resize(numRows);        for (int i = 0; i < numRows; ++i) {            data[i].resize(numCols);        }    }    // 获取行数    int getNumRows() const {        return numRows;    }    // 获取列数    int getNumCols() const {        return numCols;    }    // 获取单元格的值    int getValue(int row, int col) const {        if (row >= 0 && row < numRows && col >= 0 && col < numCols) {            return data[row][col];        } else {            throw std::out_of_range("Invalid row or column index");        }    }    // 设置单元格的值    void setValue(int row, int col, int value) {        if (row >= 0 && row < numRows && col >= 0 && col < numCols) {            data[row][col] = value;        } else {            throw std::out_of_range("Invalid row or column index");        }    }private:    int numRows;    int numCols;    std::vector<std::vector<int>> data;};int main() {    Table table(3, 4);    // 设置单元格的值    table.setValue(0, 0, 1);    table.setValue(1, 1, 2);    table.setValue(2, 2, 3);    // 获取并打印单元格的值    std::cout << "Table values:"<< std::endl;    for (int i = 0; i< table.getNumRows(); ++i) {        for (int j = 0; j< table.getNumCols(); ++j) {            std::cout<< table.getValue(i, j) << " ";        }        std::cout<< std::endl;    }    return 0;}

这个示例中的Table类有一个二维整数向量data来存储表格的数据。Table类提供了一些基本的方法,如getNumRows()getNumCols()getValue()setValue()等。你可以根据需要扩展这个类,添加更多的功能,例如添加和删除行和列等。

 
举报打赏
 
更多>同类物流大全
推荐图文
推荐物流大全
点击排行

网站首页  |  关于我们  |  联系方式网站留言    |  赣ICP备2021007278号