我有以下代码:
<div class="row">
<div class="col-lg-6 mb-1">
<div class="card h-100 text-left">
<div class="card-body">
<h4 class="card-title">Add Resources</h4>
<input type="text" class="form-control" name="employee" placeholder="Enter Name" />
<small id="message" class="form-text text-muted">Press + to add to your list</small>
<button id="bd1" class="btn add-more" onclick="promptAdd(list)" type="button">+</button>
<br><br>
<h5>List of Resources added</h5>
<div class="form-control" id="list">
<span id="list"></span>
</div>
</div>
</div>
</div>
</div>
但在跑步时,它会崩溃。 如果我不创建此类的实例,我的应用程序运行正常,但构造函数似乎崩溃,我不知道为什么。 (我对C ++很新)。
我需要使用指针,因为函数class RawModel{
public:
RawModel(GLuint id, GLuint count);
GLuint* getID(void);
GLuint* getVertexCount(void);
private:
GLuint *vaoID;
GLuint *verts;
};
RawModel::RawModel(GLuint id, GLuint count){
*vaoID = id;
*verts = count;
}
GLuint* RawModel::getID(void){
return vaoID;
}
GLuint* RawModel::getVertexCount(void){
return verts;
}
要求指针作为第二个参数。
答案 0 :(得分:1)
此
request.POST.get('field[section_name][field_name][label]')
没有初始化指针。相反,它取消引用指针并试图向指针对象提供零。但是,没有任何指针。取消引用未指向某事物的指针是未定义的行为。
初始化指针将是
*vaoID = 0;
但请注意,在此之后指针仍然指向什么。您必须创建一个对象以使指针指向它。
顺便说一下,为什么你首先使用指针还不清楚。我不知道lib,但很可能你只是将实例作为成员:
vaoID = nullptr;
答案 1 :(得分:1)
如果需要初始化指针,请初始化它们,而不是指向它们的数据:
RawModel::RawModel(GLuint id, GLuint count){
vaoID = nullptr;
verts = nullptr;
}
但更好的是使用成员初始化:
RawModel::RawModel(GLuint id, GLuint count) :
vaoID( nullptr ),
verts( nullptr )
{
}
但不清楚为什么你在类中有指针并返回方法中的指针,而不是按值存储和返回它们。