0

我有一个结构、文件和一个包含函数的类。我正在尝试在我的函数中创建结构的链接列表,但我不太明白如何去做!到目前为止,这是我为这部分代码所做的工作:

#include <iostream> 

using namespace std;

class myPrintSpool
{
public:
    void send(string);

private:
    int printSpoolSize;
    myPrintSpool *printSpoolHead;
    myPrintSpool* next;
};

struct file
{
    string fileName;
    int filePriority;
    file* next;
};

void myPrintSpool::send(string name)
{
    //Adds to linked list
    file file;

    myPrintSpool* file = new myPrintSpool;

    if(printSpoolHead == NULL)
    {
        printSpoolHead = file;
    }
    else
    {
        file->next = printSpoolHead;
        printSpoolHead = file;
    }

    printSpoolSize++;
}

我在函数内发送一个字符串,以便当用户输入要发送的文件名时,它将结构的名称更改为该文件名,而结构文件更改为该输入名称。但是,我不确定该怎么做,因为我无法首先让上述部分正常工作。

提前感谢您,并感谢您抽出宝贵时间帮助我!

4

1 回答 1

1

自从我做过任何 C++ 以来已经有一段时间了,所以这一切都来自回忆。在您提供的代码中,您没有实例化一个类。您正在为一个分配内存。如果您想为该内存分配一个新类:

myPrintSpool printSpool = new myPrintSpool();
myPrintSpool *file = &printSpool;

我对您实际在做什么感到有些困惑。似乎 printSpoolHead 将始终等于当前的 myPrintSpool 对象,如果它不是第一个实例化的对象,它会指向自身。

由于您没有具体说明错误的位置,因此请执行一个简单的输出以验证该函数正在执行您认为应该(或正在)执行的操作。

编辑:实际上,我记得被 C++ 实例化抛弃了,所以它可能是:

myPrintSpool printSpool;
于 2013-01-20T03:04:22.183 回答