相同的代码,不同的结果?从其他项目包含有什么问题?
Same code, different results? What's wrong with including from other project?
大家好。
我对Visual Studio(2017 Community(或编译器有问题。我在我的主要项目中使用了一个名为 utputStream.h 的文件,它可以正常工作,没有编译错误。
但是,如果我想在其他项目中使用它:
#include" .. Engine2 utputStream.h"
我有以下错误:
c4596'<<':成员声明中的非法合格名称 -> y: dx-engine Engine2 utiveStream.h
它在主项目中编译似乎令人误解,因此我认为错误不是由语法引起的。无论如何,这是代码:
#pragma once
#include <sstream>
#include <Windows.h>
struct SpecialCode { int code; };
extern SpecialCode msgbox ;
extern SpecialCode console;
class OutputStream {
protected:
std::stringstream stream = std::stringstream("", std::ios_base::app | std::ios_base::out);
public:
OutputStream();
OutputStream & OutputStream::operator<<(int data);
OutputStream & OutputStream::operator<<(double data);
OutputStream & OutputStream::operator<<(SpecialCode finish);
OutputStream & OutputStream::operator<<(char * data);
OutputStream & OutputStream::operator<<(const char * data);
};
该错误以&lt;&lt; 出现在第一行中
如果我用&lt;&lt; 删除所有行,则它会编译。
感谢您的任何帮助。
无论如何,它可以与项目设置有关吗?就像当您在Visual Basic中设置"严格"时?
我的错误是:
OutputStream & OutputStream::operator<<(int data);
应该是
OutputStream & operator<<(int data);
我只是认为这不是原因,因为它以前有效。
我学到了一门教训。不要编写代码,只是有效的,您也不完全确定它是如何工作的:(
一个有相同问题的人可能需要研究:
http://en.cppreference.com/w/cpp/language/operators
相关文章:
- Visual Studio 中的 CMake 项目:如何添加其他包含和库目录?
- 在Visual Studio C++项目中包含源库的正确方法是什么?
- 如何将 jsoncpp 库包含在 unix 上的项目中?
- 如何在 c++ 项目中包含一个包含所有头文件?
- 如何将外部代码包含在虚幻引擎4 C++项目中
- CMake 如何强制third_party库将项目文件包含在当前项目源目录中?
- 我怎样才能简单地将opencv 包含在我的项目中与CMake
- 当包含头文件的文件不在根项目文件夹中时,如何包含它
- 是否可以在 Xcode C++项目中包含框架?
- 如何将 glfw 库包含在C++项目中?
- 如何在其他Visual Studio项目中包含CMake lib/projects?
- 相同的代码,不同的结果?从其他项目包含有什么问题?
- 如何有条件地为 Eclipse 中的交叉编译项目包含两个不同名称的相同版本的库
- 如何将boost项目包含在我的c++代码中
- C++项目 - 包含 SQL 类文件的位置
- Visual Studio: c++项目包含路径在存储库上共享
- Visual studio 2010安装项目包含不同体系结构的dll
- 如何在visual studio 2012中将一个项目包含到另一个项目中
- git clone修改eclipse C/ c++项目包含路径
- 项目包含的库文件多于dll文件