c++ - 动态分配对象

标签 c++ oop

这是我的代码,我试图通过向用户询问大小来为对象分配内存。我不知道我哪里错了。编译器给我的错误是 “void value not ignored as it should be”。请帮我。提前致谢。

#include <iostream>
using namespace std;

class test
{
    char name[20];
    char address[30];
    char desig[20];
public:
    void getData();
    void display();
    ~test()
    {
        cout << "Destructor is invoked";
    }
};

void test::getData()
{
    cout << "Enter your name" << endl;
    cin >> name;

    cout << "Enter address" << endl;
    cin >> address;

    cout << "Enter designation" << endl;
    cin >> desig;
}

void test::display()
{
    cout << "name" << endl;
    cout << name << endl;

    cout << "address" << endl;
    cout << address;

    cout << "Enter designation" << endl;
    cout << desig;
}

int main()
{

    int s;
    cout << "Enter the size of an array" << endl;
    cin >> s;

    test* p1 = new test[s];

    for (int i = 0; i < s; i++)
    {
        *p1[i].getData();
    }

    for (int i = 0; i < s; i++)
    {
        *p1[i].display();
    }

    delete[] p1;
    return 0;
}

最佳答案

你需要改变:

*p1[i]

收件人:

p1[i]

关于c++ - 动态分配对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21466986/

相关文章:

c++ - Pthreaded 程序在 Linux 机器上导致段错误。在 Cygwin64 上运行良好

c++ - cpp 默认构造函数和成员初始化列表?

c++ - VSE(visual studio enterprise)2015 上的 C++ 中的 ShellExecute 不起作用

c++ - 我怎么知道临时对象何时被创建和销毁?

java - Java中的继承,访问子方法并使用父类数组

c++ - 使用 execvp() 执行进程时加载用户环境;

c++ - 如何将 CMake 中的 QtMain 与 Qt5 链接?

javascript - 通过将它们的方法包装在一起,Typescript 类对象的性能是否会变慢?

php - 正确的 OOP PHP 类结构和数据库交互

oop - OOP 组织问题的最佳解决方案