【问题标题】:MS Studio 2012 - How to make it behave more like Netbeans/Java?MS Studio 2012 - 如何让它表现得更像 Netbeans/Java?
【发布时间】:2013-10-02 19:38:42
【问题描述】:

我昨天开始使用 Microsoft Visual Studio 2012 学习 C++。我有 1-2 年的 Netbeans 和 Java 背景,我经常使用代码完成功能。

所以我有几个关于 MS Studio 2012 的问题:

  • 在 Netbeans 中,您可以 alt+I 修复导入,Studio 对应的是什么?
  • 在Netbeans/Java中如果你输入File file = new File();然后按alt+I,它会自动添加import java.io.File;

虽然在 MS Studio 2012 中,但我想解决以下问题,但我真的很震惊:

  • 在第一个“Hello World!”教程中,我必须使用cout << "Hello World!" 写入控制台,所以我输入了...但它没有给我任何自动执行using namespace std; 和/或@ 的选项987654325@.

有没有办法让整个 MS Studio 2012 的行为尽可能接近我在 Netbeans/Java 中使用的?

【问题讨论】:

  • 删除 [java][netbeans] 作为答案与这些无关。
  • 不要忘记 Java 是一种功能较差的语言,它使程序更容易理解和检测代码。
  • 如果你尝试 IntelliJ,你会发现你提到的代码不需要写一半,更多的代码会自动为你填写。
  • @PeterLawrey 我计划先学习一些 C++,然后尝试用 OGRE 制作一个简单的游戏。我读到它需要 Visual Studio 2012 的插件,所以我认为 Studio 2012 会是最佳选择吗?还是我错了
  • 我认为 Visual Studio 最适合 Windows C++ 应用程序。

标签: c++ visual-studio visual-studio-2012


【解决方案1】:

首先,C++ 不是 Java,#includes 不是导入。 IDE 无法知道您要使用的类和函数在哪些头文件中声明/定义。为此,它必须解析包含路径中的任何标头。并且由于每个 any 文件都可以用作标头,即可以包含在内,因此它必须(尝试)解析整个包含路径中的 any 文件。 同样,C++ 不是 Java,因此与 Java 相比,C++ 有一些优点和缺点。后者之一是需要手动管理您的包含。

更新: 正如 Martin Ba 所指出的,有一些工具可以在一组课程上为您提供帮助,例如来自标准库等公共库的类和在 VS 项目中定义的类,但这些是第三方工具,必须依赖手动管理的数据库,这些数据库需要扩展才能使该功能在其他存在的情况下正常工作图书馆。

tl;dr 您无法自动导入 C++ 中的所有内容

【讨论】:

  • +1 C++ 的强大之处在于您可以更好地控制程序的几乎每个方面。不利的一面是,IDE 无法对程序的编写方式做出尽可能多的假设。
  • @MartinBa:不,你不能。您可以尝试,是的,但它甚至不必是正确的。许多 MSDN 符号“在 X 中定义,包括 Y”。好吧,完成可以考虑到这一点,但无论如何它不会与其他代码一起使用。
  • @MartinBa 你可以获得一组已知的类和函数的帮助,是的。但是,您无法像在 Java 中那样自动获得几乎所有内容,因为它需要某种关于在何处定义的数据库。该数据库包含在 Java 类路径中的 *.class 文件中,但在标准 C++ 中不存在
  • @Roman:你们知道说“你不能”。并说“你不能 100% 准确”。是完全不同的两件事吗? VSX 功能 很有用,适用于许多 种情况。
  • @MartinBa OP 想要他从 Java 中知道的功能(即自动导入 all 类),而这在 C++ 中是不可能的
【解决方案2】:

VS 的重构支持无法做到这一点。

但是,第 3 方软件 - Visual Assist X - 能够尝试为某个符号包含正确的头文件。见:Auto Using and Add Include Directives

您的上下文的问题是它是商业软件,您也只能与付费的非快速版本的 VS 一起使用。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-02-08
    • 1970-01-01
    • 2018-12-25
    • 2021-06-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-12-12
    相关资源
    最近更新 更多