18

首先,我想明确一点,这对 C++ 来说是全新的,所以这可能是一个简单且有些明显的问题。在我正在阅读的名为 C++ Primer 的 C++ 书中,通过以下方式定义了一个类:

class classname{
public:

private:

};

但是,在 VS2008 中,编译器不喜欢这样。但是通过在课前添加 public ref,如下所示:

public ref class classname{

它在编译器中通过。谁能解释一下只用类和公共参考类定义有什么区别?我真的很感激。

4

4 回答 4

23

ref语法是仅在托管 C++ 中使用的 Microsoft 扩展。根据您在创建项目时错误地轻弹/clr编译器开关的声音。如果你想做的只是创建真正的 C++ 程序,那么你会想要恢复它。

于 2009-08-05T08:05:05.960 回答
7

您正在阅读一本名为 C++ Primer 的书,它教授C++编程语言,而您正在尝试创建一个程序,告诉 VC++ 代码使用C++/CLI,这是一种不同的编程语言......

于 2009-08-05T08:06:31.197 回答
4

您(编辑:和其他用户)将此问题标记为:

  • 两种编程语言C++C++/CLI
  • Microsoft 提供的一种商业集成开发环境 (IDE)Visual C++,它允许您使用三种不同的语言(C、C++ 和 C++/CLI)进行编程。在帖子中,您提到了Microsoft Visual Studio 2008,它是 Visual C++ 的超集。
  • 组语言扩展Managed C++,它在历史上曾引用过很多不同的东西,坦率地说,我现在不确定它是什么意思 :)

但是,您的首要目标应该是学习如何配置 Visual C++ 以使用您选择的语言 C++ 进行编程

像往常一样,找到这个问题的答案的一个好方法是在“提问”页面中输入它,然后查看建议的相关问题。我认为这是最好的一个:在 Visual Studio (non .net) 中编译“标准”C++

于 2009-08-05T08:20:19.827 回答
1

你在学习标准的 C/C++ 语言吗?如果答案是肯定的,那么该语法与 Microsoft C++/CLI 语言有关...

看:C++/CLI

尝试使用带有 C++ 扩展的 Eclipse。它提供了创建和执行标准 C++ 程序所需的一切!

日食下载

于 2009-08-05T08:12:29.610 回答