我正在寻找一种方法来在Visual Studio中显示当前的TFS工作区.
当我打开Source Control Explorer(或Pending Changes)时它是可见的,但我希望它在我编辑代码时也可见.因此,例如在工具栏,窗口标题栏或底部状态栏中显示它并不重要,只要我一眼就能看到它.
有小费吗?
在构建我的小型C++项目时,我得到以下2个错误,无法找出原因:
错误:在'struct'之后使用typedef-name'TTF_Font'.
指向以下代码行:struct TTF_Font;在Foo.h中.
错误:'TTF_Font'在此处有一个先前的声明.
指向以下代码行:typedef struct _TTF_Font TTF_Font;在SDL_ttf.h中.
我已将其缩小到新测试项目中的以下文件:
foo.h中:
#ifndef FOO_H
#define FOO_H
struct TTF_Font;
class Foo
{
TTF_Font* font;
};
#endif // FOO_H
Run Code Online (Sandbox Code Playgroud)
Foo.cpp中:
#include "Foo.h"
#include "SDL/SDL_ttf.h"
// No implementation, just testing
Run Code Online (Sandbox Code Playgroud)
Main.cpp的:
#include "Foo.h"
int main(int argc, const char* argv[])
{
Foo a;
return 0;
}
Run Code Online (Sandbox Code Playgroud)
你们知道我做错了吗?
我的目标是转发声明TTF_Font,所以我可以在我的头文件中使用它而不包括SDL_ttf头文件.我读到包含其他头文件中的头文件是一种不好的做法,所以我切换到转发声明.我的所有其他前向声明工作正常,除了这个单一的结构.
当我用struct TTF_Font;标题include 替换前向声明时#include "SDL/SDL.ttf.h",它编译没有错误.所以我可以使用它,但我想知道为什么,该死的:-).
额外信息:我正在使用Code :: Blocks IDE和mingw32编译器.Project使用SDL图形库.还没有太多的C++经验,来自C#背景.
在 JetBrains Rider 中输入 C# 代码时,它会给出“使用”命名空间建议的列表。例如,输入“List”将显示它可以添加的许多建议的“使用”命名空间,例如“List<>(在 System.Collections.Generic 中)”。
烦人的是,通常最重要的建议是来自您永远不会关心的第三方库的命名空间。就像输入“Assert”会建议使用来自 Zenject 的 ModestTree,这是我永远不需要的东西。
更糟糕的是,我在当前的类中已经有一个用于“Assert”的“using”命名空间(在本例中:using NUnit.Framework),并且它仍然建议使用 ModestTree 作为顶部条目。
有没有什么方法可以为我永远不想使用的项目指定名称空间,因此不会让它们出现在自动完成建议中?也许是一个插件?