繁体   English   中英

C ++ Intellisense和错误检查的问题

[英]Issue with C++ Intellisense and Error Checking

使用Visual C ++2008。第一次,我正在尝试从C#过渡过来,并想尝试一下。 除了诸如智能块和一些颜色之类的一些东西之外,我没有改变太多基本设置。 因为我对C ++知识的掌握程度为零,所以我所做的所有Google搜索工作都无法胜任。

问题的第1部分我的问题是我刚刚创建了第一个Windows窗体项目。 现在,我双击进入类似的内容,intellisense中没有列出任何成员吗?

private: System::Void executeDocumentationCmd_Click(System::Object^  sender, System::EventArgs^  e) 
{
this. NOTHING POPS UP?
}

如果我输入MessageBox:: ,那么它将弹出Show intellisense。 这正常吗? 我发现在学习基础知识时列出有用的txt框和成员很有帮助,但是它不会像C#intellisense中那样做。

我包括stdafx.h 我根据在线帮助删除了ncb文件,然后重新启动,什么也没有。 其他标题?

问题的第2部分 :与C#编辑一样,实时编码中没有下划线的错误。 这是C ++ express具有的功能(编译前进行错误检查)吗? 输入错误信息时,我没有看到列出的任何警告或错误。

在C ++中, this是一个由-> not取消引用的指针.

另外,VS2008中的C ++智能感知没有C#中的有用,这包括不进行错误检查。 VS2010将引入针对C ++的内联错误检查。

您需要注意C#和C ++之间的一些非常大的区别。 这是一个很大的主题,所以我不认为此处的文章可以总结它们,但是有两个重要的方面,即缺少垃圾收集(查找delete关键字)和指针。 指针存在于C#中,但仅在unsafe代码块中可用,而在C ++中,指针几乎是国王。 您可能需要购买一本书来帮助您的学习。

仅供参考,根据您的代码片段,您并不是真正在使用C ++,而是在使用另一种语言的C ++ / CLI。

已有一段历史,C ++专门设计为与C兼容,而C#和Java不兼容。 结果之一是C ++难以解析,因此,使智能感知对C ++起作用比对C#困难。 我发现它不完整,希望它在VS 2010中更好。

而且,与大多数语言相比,C和C ++在变量和指针之间的区别更多。 我不熟悉C#,但是在Java和Common Lisp等语言中,几乎所有内容都是指针,因此没有特殊的表示法。 当我使用Pascal时,指针几乎没有做任何事情。 C和C ++是我最容易混淆的语言。 它们还允许使用指针算术,这就是产生许多错误的原因。

我不认为任何一种语言都只是试图从中引入C ++的一种好语言。 我建议,只要您对C ++感兴趣,就可以像学习新语言一样学习它。 获得良好的现代介绍。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM