这是我在这个网站上的第一个问题.. 提到我的朋友,他从这里学到了很多东西 ;),现在轮到我了 .. :)
尊敬的成员.. 在这一点上,我非常紧张并且非常沮丧地发现,我应该如何处理我的代码才能工作..!!好吧,我是一个具有 c++ 基础知识的学生,在本学期我们将学习面向对象编程.. 完成这项任务是为了阐明类(私有和公共)的概念,此外,还有初始化、排序数组、搜索钥匙等
我知道,当我们使用动态内存时,我们必须编写构造函数、析构函数等,我对此感到困惑……我认为参数有问题,或者复制构造函数,深浅复制。我不知道应该怎么做!!!好吧,我不是专业的先生......所以我很抱歉。!!
如果有人用关于数组、类中的指针的小例子来指导我的代码,我该如何处理。. . :( :( 非常感谢先生。
// Constructor.cpp : Defines the entry point for the console application.
//
#include <iostream>
using namespace std;
class IntArray
{
private:
int size;
int *values;
public:
void InputData() const;
void OutputData() const;
void Search() const;
void Bubble() const;
IntArray(int size)
{
values = new int[size];
}
};
void IntArray::InputData() const
{
cout << "==> Entering Data <==" << endl;
for (int i = 0; i < size; ++i)
{
cout << ">> Enter Element #" << i+1 << ": ";
cin >> values[i];
}
}
void IntArray::OutputData() const
{
cout << "==> Printing Data <==" << endl;
for (int i = 0; i < size; ++i)
{
cout << values[i] << " ,";
}
cout << "\n";
}
void IntArray::Search() const
{
int key;
cout << "Please Enter A KEY To Find: ";
cin >> key;
int index = 0;
bool found = false;
for (int i = 0; i < size; ++i)
{
if ((!found) && (key == values[i]))
{
index = i;
found = true;
}
}
if (found)
{
cout << "KEY Found At The Index: " << index+1 << endl;
}
else
{
cout << "KEY is not present." << endl;
}
cout << '\n' << endl;
}
void IntArray::Bubble() const
{
for (int i = 1; i < size; ++i)
{
for (int j = 0; j < size; ++j)
{
if (values[j] > values[i])
{
int temp = values[j];
values[j] = values[i];
values[i] = temp;
}
}
}
}
int main()
{
const int size = 5;
IntArray u(size);
u.InputData();
u.OutputData();
u.Search();
u.Bubble();
system("pause");
return 0;
}