【发布时间】:2016-02-14 17:32:00
【问题描述】:
我在 C++ 中创建了一个表。我有一堂餐桌技巧课。我想用函数为方表获取内存,但我不知道我应该如何编写构造函数和用于内存分配的函数。
我从键盘获取大小,我想为分配内存的其他函数提供此返回语句。表格必须是二维数组[][] 或矩阵。
#include <iostream>
using namespace std;
class Table {
unsigned int size;
public:
unsigned int GetTableSize();
unsigned int *GetMemory(unsigned int);
};
unsigned int Table::GetTableSize() {
cout << "Give size: " << endl;
cin >> size;
return size;
}
unsigned int *Table::GetMemory(unsigned int s){
s = size;
return new unsigned int[s * s];
}
int main()
{
Table tab;
tab.GetTableSize();
tab.GetMemory();
return 0;
}
*GetMemory 函数必须返回表的内存大小。我有 tab.GetMemory 的问题。我也试过 tab.*GetMemory。
tab*GetMemory:QT 创建者说:GetMemory 未声明。 tab.GetMemory:Qt 创建者说:调用 'Table::Getmemory' 的函数不匹配。
【问题讨论】:
-
GetTableSize和GetMemory是两个毫无意义的成员函数。然后还有s = size;,不知道函数参数和返回值的用途。选择book。 -
“我有一堂带表技能的课”不解析。不清楚你在问什么。请重写此代码,以便更清楚地表达您的问题。
-
GetTableSize 从键盘获取大小。之后我想为表分配内存。表是一个数组。我需要大小 * 大小(乘法)的内存,因为它是一个正方形。
-
例如 GetTable size 从 cin 获取 5。所以大小 = 5。5 行和 5 列。我需要 5 * 5 unsigned int 的内存。
标签: c++ qt memory memory-management constructor