小编use*_*471的帖子

错误:使用std :: cout对类范围内的非成员使用声明

我下载了一个c ++项目,并且能够使用cmake生成的makefile编译它.

但是当我尝试在项目的一个.hh文件中添加我自己的一系列.h文件时,我开始得到一百万个错误,其中一个是:

错误:使用std :: cout对类范围内的非成员使用声明;

当包含的.h文件在 using std::cout其他地方使用时,它可以工作,但是当添加到此项目时,它会出现此错误.

可能是什么问题?

using std::cout;
using std::endl;
class TextManager : public FileManager {
    public:
        TextManager (const char * filename);
        void scanFile (Image &image, Scene &scene);
        void scanObjectModel (Image &image, Scene &scene);
        void getImageData (Image &image);
        void getMaterialData (Scene &scene);
        void getLightData (Scene &scene);
        void getSphereData (Scene &scene);
        void getPlaneData (Scene &scene);
        void getTriangleData (Scene &scene);
        int getLineValue (int size);
        void getLineValue2 (float (&lineNumbers) [10], Scene &scene, int &lineNumbersIndex);
        void getVerticesValues (int initPos, …
Run Code Online (Sandbox Code Playgroud)

c++

4
推荐指数
1
解决办法
5969
查看次数

我的 OGL 程序找不到 gl.h 和 glu.h 了

我有一个 Ogl 程序,我用它来编译得很好。然而,几个月没有处理它之后,我回来了,发送我的 IDE 代码块来编译它,然后返回:

/.../glew-2.1.0/include/GL/glew.h|1205|错误:GL/glu.h:没有这样的文件或目录|

/.../glfw-2.7.9/include/GL/glfw.h|176|错误:GL/gl.h:没有这样的文件或目录|

因此它打开 glew 标题并指向这些行:

  #include <GL/gl.h>
  #include <GL/glu.h>
Run Code Online (Sandbox Code Playgroud)

一些观察。1)上次效果很好。2)我不使用谷氨酸。

我相信某些配置被无意中更改了。问题是:在哪里?

我的第一个假设是 IDE。我看了看,一切似乎都正确。在项目构建选项的“链接器设置”选项卡中,glfw 和 glew 的 .so 库文件就在那里。在“搜索目录”选项卡中,有指向 glew/include/GL 和 /glfw/include/GL 的链接

第一个目录中是 glfw 标头。对于后者,glew.h 和其他三个与 glew 相关的头文件。

在整个系统上寻找 glu.h 和 gl.h 头文件,我什么也没找到。我做了一个

sudo apt-get install mesa-common-dev

但当我尝试编译程序时它没有改变任何东西。

是否还有其他代码块设置需要调整而我缺少?关于系统配置错误,我还能在哪里找到有用的信息?哪个原因似乎更有可能?

c opengl glew codeblocks glfw

3
推荐指数
1
解决办法
5317
查看次数

不能使用git add origin git @任何新的git dir

我有一个项目,我正在生成许多提交,所以它占用的空间正在快速增长.由于我有一个gitlab页面提交被推送,我认为最好摆脱我本地git目录上的这些旧提交,因为我总是可以从gitlab获取它们.

为此,我只删除了本地.git目录,并创建了一个新目录.我用了这个序列

git init 
git add .
git push -m "test"
git add origin git@myGitPage.../myGitPage.git 
Run Code Online (Sandbox Code Playgroud)

但是最后一个命令导致了

致命的:pathspec'genin'与任何文件都不匹配

然后我恢复了旧的.git目录,做了一些修改并将它们推送到gitlab.然后删除了本地git dir,再次尝试使用从头创建的新git,但正如预期的那样,它再次无法工作.

在恢复旧的git时,我正在恢复旧版本,因为我将新版本推送到gitlab,现在当我发送一个

git push origin master
Run Code Online (Sandbox Code Playgroud)

用这个旧版本

我收到了

![拒绝]主 - >主(非快进)错误:未能将某些引用推送到'git @ ...'为了防止您丢失历史记录,拒绝非快进更新在推送之前合并远程更改再次.有关详细信息,请参阅"git push --help"中的"关于快进的注意事项"部分.

如果我下载,然后从gitlab解压缩最新版本,我会收到相同的:

致命的:pathspec'genin'与任何文件都不匹配

要召唤它,使用全新的git目录或gilab的最新版本,我收到上述错误消息.随着已经老了,我收到的消息提到快速前进.

我怎么能解决所有这些混乱,回到我的常规

git add .
git push -m "anything"
git push origin master
Run Code Online (Sandbox Code Playgroud)

不需要在我的电脑上保留旧的提交,但没有在gitlab上删除它们?

git gitlab

1
推荐指数
1
解决办法
1001
查看次数

标签 统计

c ×1

c++ ×1

codeblocks ×1

git ×1

gitlab ×1

glew ×1

glfw ×1

opengl ×1