如果你是对技术感兴趣的人,学 VC/C# 吧!精通了这两样,你毕业的时候找一个一流的工作不成问题,以后的前途/钱图远大;如果你想继续深造,多学一些基础理论课程,如操作系统原理/编译原理/数据结构/离散数学等等。另外,好像现在所谓的 Linux+OSS 挺热,如果你个人愿意的话,可以学。不过我个人认为 Linux 和 *nix 越早退出历史舞台就越对人类的科学技术进步有利,他们毕竟是“沉渣泛起”罢了,再过不到 10 年就会变得么么无闻。Java 也是烫手山芋,不知你有没有兴趣,好像 C# 的出现使 Java 的存在已没有必要了。
解决方案 »
- Spread控件的有没有这个属性?
- "—"在 vb中输出不正确????
- VB基础题目,为了提高大家学习VB语言的兴趣,本人现将100分基础分数以答题的方式献给大家~~~
- .LineUnitBefore = 1 '段前行距 '怎么自己改了?
- 好久没来散分了,最近太忙不能来CSDN,散分谢罪!
- 请教各位大侠!急急急!!!!!!
- VB 悬赏 求源代码
- 用vb在excel中插入分页符后释放对象问题!
- 如何格式化Datagrid中的内容
- 关于MSHFlexGrid的很奇怪的问题
- 重奖:在richtextbox控件中如何将光标移到指定行的第一个字符
- 如何在VB中真正删除Foxfro的DBF文件记录? (很急!很急!很急!很急!很急!)
我认为,vb,delphi,pb,c++builder同属可视化编程的东西.
Vc++不同,属于笨一点,但高一点的东西.你可以学精VB,往VC上靠才有意义.
根据笨人多年的专业开发经验,任何一种开发工具都有长有短,到高手手里都会做出好软件来.
比如我手里有一位高人用Clipper开发的MIS软件,太棒了,使我收益费钱阿
return to inoncense
我正在为这个目的而努力:)(好象还差十万八千里呢)
不要小看vb,本人也是vb的忠实爱好者,要把vb学精通也不是很简单的事情,只要你能通过vb把oop胡精神领会,那你就是真正的学会了编程
C#已经出来了,但是我不觉得他能代替java,java的面向对象结构是相当完善的,不是一两个公司通过模仿而能实现的
你应该先把面向对象编程的内含搞明白,
无所谓用什么语言,
因为现在的程序主要在于稳定,
如果你把VB搞得非常明白那你将来想再学什么语言都非常快了。
Delphi? 鸡肋。看你有没有空了。在计算机科学中,掌握某些语言只能说是打打基础而已,不要把它看得很难,很了不得。
欢迎有人找我探讨问题!
OICQ:6291162
EMAIL:[email protected]
给一个例子,一个用VB实现的双向循环链表。
先定义一个结点类,类名为Node,代码为:
Option Explicit
Public pNext As Node
Public pPrev As Node
Public data As SinglePrivate Sub Class_Initialize()
Set pNext = Nothing
Set pPrev = Nothing
End SubPrivate Sub Class_Terminate()
Set pNext = Nothing
Set pPrev = Nothing
End Sub
再添加一个窗体,窗体上添加两个列表框,list1和list2,窗体的代码为:
Option Explicit
Private pHead As Object
Private pV As ObjectPrivate Sub Form_Load()
Dim i As Integer
Set pHead = New Node
Call CreateLinkList
Call InsertNode(pHead, 503)
Call InsertNode(pHead, 1.875)
Call InsertNode(pHead, -3.675)
For i = 1 To 100
Call InsertNode(pHead, -1 * i)
Next
Call PrintList
Call DeleteList
End SubPublic Sub CreateLinkList()
Dim p As Node
Dim nLoop As Integer
Static pLast As Node
pHead.data = 0
Set pLast = pHead
For nLoop = 1 To 501
Set p = New Node
p.data = nLoop
Set pLast.pNext = p
Set p.pPrev = pLast
Set pLast = p
Next
Set pLast = Nothing
Set p.pNext = pHead
Set pHead.pPrev = p
Exit Sub
End SubPublic Sub PrintList()
List1.AddItem "Forwards"
Set pV = pHead
Do
List1.AddItem pV.data
Set pV = pV.pNext
Loop While Not pV Is pHeadList2.AddItem "Backwards"
Set pV = pHead.pPrev
Do
List2.AddItem pV.data
Set pV = pV.pPrev
Loop While Not pV Is pHead.pPrev
End SubPublic Sub DeleteList()
Dim p As Node
Set pV = pHead
Do
Set pV = pV.pNext
Set p = pV.pPrev
If Not p Is Nothing Then
Set p.pNext = Nothing
Set p.pPrev = Nothing
End If
Set p = Nothing
Loop While Not pV.pNext Is Nothing
Set pV = Nothing
Set pHead = Nothing
End SubPublic Sub InsertNode(head As Node, data As Single)
Dim p As New Node, q As Node, prev As Node
p.data = data
Set q = head
Set prev = head.pPrev
While ((q.data < p.data) And Not q.pNext Is head)
Set q = q.pNext
Set prev = prev.pNext
Wend
If Not q.pNext Is head Then
Set p.pNext = q
Set p.pPrev = prev
Set prev.pNext = p
Set q.pPrev = p
If q Is head Then
Set head = p
End If
Else
Set p.pNext = head
Set p.pPrev = q
Set head.pPrev = p
Set q.pNext = p
End If
End Sub
一个双向循环链表就形成了,List1中是正向遍历的结果,List2中是反向遍历的结果
类的构造器Class_Initialize()过程,类的析构Class_Termainate()过程,结点内存的分配和回收都由类自身完成,还有多态,pHead As Object;Set pHead = New Node;Set pHead.pPrev = p;指向基类的指针指向了子类,并调用了子类的属性,是不是挺像C++的代码?链表有了,二叉树,由临接表构成的图等数据结构都很容易实现了吧,实际上用VB能构造很复杂的数据结构,上面的代码只是简单的示例,实际可以做的更完善。
(产生对象的地址)可以构造真实的,非常复杂的数据结构。
上面三个方法并没有在Microsoft的正式文档资料中公布(包括MSDN),但查看VB6的基本动态运行库MSVBVM60.DLL可以发现这三个方法:
[entry(0x60000006),hidden]
long __stdcall VarPtr([in]void* Ptr);
[entry(0x60000007),hidden]
long __stdcall StrPtr([in]BSTR Ptr);
[entry(0x60000008),hidden]
long __stdcall ObjPtr([in]IUnknown* Ptr);
类似这样的隐藏方法还有不少,实际上VB6的功能是相当强大的,但大家又真正了解VB6多少呢?
其实这个帖子应该转发到Delphi区,你在那儿可以听到不同的观点。
我很同意r3000和gamebody999的看法。
vb---->vc
++
无论什么语言上,语言上都只顶多占10%的优势,系统的整个设计思想才是最重要的。
系统设计的好坏全在设计的思想,与语言关系不大
http://inkeven.126.com