这是我在任何论坛上的第一篇帖子,所以请耐心等待。
我正在编写一个利用自定义类“Book”的C++程序,其中包括标题、作者和存储在字符串中的其他变量等成员变量。在这些成员变量中,有一个用于存储Review类型对象的向量(另一个自定义类)。现在,在我的驱动文件(其中包含main())需要访问该向量(每个Book对象中的Reviews向量)并对其进行更改。我意识到我需要利用vector指针类型(例如vector pointerName)。因此,我向Books类添加了另一个成员变量,即指针。我面临的问题是将该指针指向该向量。我尝试在对象的默认构造函数中对其进行解引用并将其指向向量,但这会导致我的程序在运行时崩溃而不抛出异常。我放在构造函数中的代码行是*pointer = vector_of_reviews;
我是这个论坛的新手,还在学习如何在这里发布,请谅解如果我在帖子中犯了错误或者信息不够清晰或者不足。如果我需要发布或说更多内容来明确我的立场,请告诉我。
谢谢。
我正在编写一个利用自定义类“Book”的C++程序,其中包括标题、作者和存储在字符串中的其他变量等成员变量。在这些成员变量中,有一个用于存储Review类型对象的向量(另一个自定义类)。现在,在我的驱动文件(其中包含main())需要访问该向量(每个Book对象中的Reviews向量)并对其进行更改。我意识到我需要利用vector指针类型(例如vector pointerName)。因此,我向Books类添加了另一个成员变量,即指针。我面临的问题是将该指针指向该向量。我尝试在对象的默认构造函数中对其进行解引用并将其指向向量,但这会导致我的程序在运行时崩溃而不抛出异常。我放在构造函数中的代码行是*pointer = vector_of_reviews;
我是这个论坛的新手,还在学习如何在这里发布,请谅解如果我在帖子中犯了错误或者信息不够清晰或者不足。如果我需要发布或说更多内容来明确我的立场,请告诉我。
谢谢。
pointer = &vector_of_reviews
。*pointer = vector_of_reviews
将会把vector_of_reviews
复制到指针当前所指的随机地址,这很可能会导致 SIGSEGV 或类似的操作系统错误。 - Tony Delroy