【发布时间】:2015-12-02 06:40:00
【问题描述】:
我是 C++ 的初学者,作为学习练习,我正在尝试编写一个用于执行矩阵数学(矩阵乘法、求逆等)的库。 我要做的第一件事是定义一个类“Matrix”,它的成员是“rows”——矩阵中的行数,“cols”——矩阵中的列数,以及“_matrix”——一个数组包含矩阵的元素。 问题是我不知道如何构建构造函数。 我可以写类似“矩阵(m,n,array)”的东西吗?如何确保数组实际上包含 m*n 元素? 我会喜欢一些关于如何进行的指导(好吧..如果我说实话,如何开始:))
谢谢!
【问题讨论】:
-
默认情况下你的类应该自己管理数组,而不是让用户传入任何数组。完成该工作后,您可以添加一个构造函数以从外部数组复制,但是您必须确保用户传入有效的维度,如果用户做得不好,那是用户的错,而不是您的错。
-
我强烈建议您在互联网上搜索示例。你可以做一些类似“c++ 矩阵源”的事情。
-
欢迎堆栈溢出!不幸的是,这个问题可能不是最适合堆栈溢出的问题。最好的问题是围绕一个非常具体的编程问题组织的,它可能有一些代码,这些代码是否有效。 “如何开始的指南”不是 stackoverflow 提供的——如何开始在很大程度上是一个见仁见智的问题,这些问题往往会被否决。最好在您深入了解它并且您有一些代码要显示时回来。
-
顺便说一下,矩阵是一个单独的对象而不是数组;就像堆栈不是数组(但可以使用一个来实现)。我建议调整你的问题的标题(类似于“实现矩阵构造函数”)。
标签: c++ arrays class matrix constructor