gpt4 book ai didi

c++ - 在 Code::Blocks 中出现范围错误

转载 作者:行者123 更新时间:2023-11-28 00:31:31 26 4
gpt4 key购买 nike

这可能是也可能不是特定于 IDE 的问题。

所以我使用 Code::Blocks 做了一个项目。在项目文件夹中有 Main.cpp、Person.h 和 Person.cpp:

// main.cpp
#include "Person.h"
int main()
{
int x = 1, y = 2, z = 3;
Person p = new Person(x, y, z);
}

我收到一条错误消息,指出 Person 和“p”未在此范围内声明。但是我在 Person.h 中声明了它们。我包含了 Person.h 头文件。那么,那里的代码也应该在 Main 中,对吧?

Person.h 的内容如下:

#ifndef PERSON_H
#define PERSON_H

class Person
{
public:
Person();
Person(int, int, int);
private:
int x, y, z;
};

#endif

最佳答案

在类中编写构造函数。

Person(int a, int b, int c)
{
x=a;
y=b;
z=c;
}

并改变

Person p = new Person(x, y, z);

Person p(x, y, z);  //if you just want to make an object p

或到

Person* p = new Person(x, y, z);  //if you want a pointer p to point to a Person object

//your code goes here

//But in this case, you will have to explicitly deallocate the space you've allocated for p
delete p;

关于c++ - 在 Code::Blocks 中出现范围错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22727316/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com