vs2008 一些莫名奇妙的BUG,求解!

guliaoyong 2010-01-16 12:34:27
可能因为我水平有限,遇到的问题自己不知道是什么原因造成的,因为实在是太莫名其妙,匪夷所思了,我只能认为它们是BUG,还希望有高手能指点一二:


情况一:写一个类,才写几行,提示我变量已经声明,我检查了下,一个变量叫set_secert,一个叫secert,系统在set_secert 上加波浪线提示我:变量已经声明(忘记是提示set_secert还是secert已经声明了,反正哪个都不正常).....我甚至ctrl+F搜索了, 也没找到重复的,无奈,只能改变量名......


情况二:创建了一个窗体,加了一些控件,但是编译查看布局的时候,发现有时候在成功编译前,vs2008会卡好久,窗体才跳出来,有时候开始不卡, 等把编译的程序关闭了,vs2008卡死了,要好久才好.开始以为是自己代码的问题,但是想想在创建新窗体前都没事的,每次只要对代码做改动,或者对窗体布局做改动,就会卡,实在不能调试.后来发现,其实不是关闭程序的时候VS卡住,程序编译好的时候, VS其实已经卡了,直到我关闭程序还是卡着而已,如果点了编译之后,直接强行把软件关闭,再打开,就一点事都没有,不卡了...哎...太匪夷所思了....这样关了开,开了关也不行啊...试试重新创建个项目,弄个窗体试试....然后把原来窗体的控件都复制过去...发现...还是一样.... 没辙...从项目中排除掉窗体,重建个新的窗体,控件也重新拉出来....布局一模一样...问题解决了...默.....


情况三:写一个方法,往一个集合里面添加我选中的treeview节点,然后用messagebox,show一下集合的count,每次我选中了一个节点,都在集合里添加两个,开始以为是重复调用了还是怎么的,怎么看都是只执行了一遍,于是乎在添加成员的代码那里加个断点...调试...在断点处停止,继续编译,show出来count=1...汗...取消断点....count=2....如是几次....疯.....增加集合成员后加个 messagebox,show一下....count=1,注释messageobx....count=2....默....我惹不起....我改代码还不行嘛....


情况四:今天...调用一个类里面的属性,写set{ get_appkey=value }....编译出错....看一下,好像value是空的....那我加个判断,if{value!=null}

编译....出错.....看了一下....出错的位置竟然是set后面的"{"....莫名其妙中....于是注释掉set句....结果原来不出错的get也出错了...出错位置是类结尾的"}"...调用堆栈里写的是get_appkey.set出错了....疯了...大哥...我已经把 set删了啊....别整我了啊....前几次都没截图...这次实在受不了了...我要把碰到的问题都统计下来....


VS2008BUG
...全文
225 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
PandaIT 2010-01-16
  • 打赏
  • 举报
回复
情况二

试着加条内存!!

情况三

你对.net的运行机制还不了解!建议你去多看看!

如果真像你所说的这么多bug,我想MS的C#也不会活这么久了!何况只是一个工具!!!
PandaIT 2010-01-16
  • 打赏
  • 举报
回复
这个本身不是bug!

你用把你写的代码进行反编译之后你就会很清楚了!

public int age{get; set;}

反编译查看代码其实是有两个方法

一个get_Age
一个set_Age
这时候编译器就会提示!方法已经在其它的地方声明过了!

以前这个问题多次在csdn问到过!!
guliaoyong 2010-01-16
  • 打赏
  • 举报
回复
最奇妙的是....我把属性里面的set删除了,然后重新生成了....但是调用的代码里面,赋值的语句没有删除,竟然成功编译了......
guliaoyong 2010-01-16
  • 打赏
  • 举报
回复
反汇编...我看不懂....才学C#不到一年...还是自学....T_T...进境缓慢...感觉要学的太多....
guliaoyong 2010-01-16
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 zhoukang0916 的回复:]
这个本身不是bug!

你用把你写的代码进行反编译之后你就会很清楚了!

public int age{get; set;}

反编译查看代码其实是有两个方法

一个get_Age
一个set_Age
这时候编译器就会提示!方法已经在其它的地方声明过了!

以前这个问题多次在csdn问到过!!

[/Quote]


原来是这样....
guliaoyong 2010-01-16
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 zhoukang0916 的回复:]
情况二

试着加条内存!!

情况三

你对.net的运行机制还不了解!建议你去多看看!

如果真像你所说的这么多bug,我想MS的C#也不会活这么久了!何况只是一个工具!!!
[/Quote]

3G内存,还要加?不是电脑卡了,是VS2008卡了,而且编译出来的程序一点都不卡,把程序关了,VS仍然卡.其他程序也都可以正常的用,内存使用还不到1G.CPU也很低,绝对不是电脑的问题

110,571

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧