学习VB有几个月了,下面是我对学习笔记的分类,大家看看有什么建议。
在学习总体分类上还不是太清晰,CSDN上VB具体细节的回复已经很多了,
哪位能归纳总结一下学习语言心得(剔出VB特性),多谢了.#API函数
#ADO #Adodb和Adodc #RecordSet #Update #绑定 #存储过程
#过滤Filter #临时表 #事务 #通配符 模糊查询
#ActiveX #COM组件 #DLL #VxD
#INI #注册表 #启动
#Modem
#EXCEL #Word #XML #插件 #打印 #VBA
#OOP面向对象 #类模块
#安装程序制作工具
#SQL语言
#制作CHM
#菜单 #工具条 #按钮
#打印 #报表
#调试 #错误Error
#钩子 #消息
#控件 DataGrid #DBGrid #vsFlexGrid #vsPrinter #vsView
#控件 ActiveBar #ComboBox #ListBox #ListView #ToolBar
#TreeView #Win9X控件
#屏幕 #窗体
#声音 #bitmap
#鼠标 #键盘
#数据库Access #SQL Server
#数组 #字符串
#图形 #图象
#网络 #通信
#文件
#压缩
#硬件 #控制
#手机
■■■■■■另外有两方面的问题要问:
[1]转换MSDN C代码到VB如果数据类型不属于
ATOM /BOOL /BYTE /CHAR /COLORREF /DWORD /HWND, HDC, HMENU /INT /UINT /LONG
/LPARAM /LPDWORD /LPINT /LPUINT /LPRECT /LPSTR /LPCSTR /LPVOID /LPWORD
/LRESULT /NULL /SHORT /VOID /WORD /WPARAM 等类型应该以何种规则或经验进行转换如果API是{X as long; Y as TypeX},是否可以不声明第二层数据类型TypeX{m as integer; n as single},把Y声明成 Y as Byte等常用类型作为特定用法。
[2]谁能简洁解释下面用语,千万别拷贝名词解释,
请用说明、类比、举例等方法形象说出是什么和能干什么。多态
重写
重构
重载___(二进制重载)
|___(源代码重载)
关联
组合
衍生
继承
继承___单一继承
|___多重继承
基于接口
组件
构件
泛型
派生
前期绑定
后期绑定
构造函数
析构函数
虚函数(虚方法)
覆盖 (重 写)
虚基类
类库
名字空间如果一定要用10000个字说清比尔.盖茨是个什么样的人,你适合当传记作家,
如果用50个字就行,你适合回答我的问题,贡献一下智慧吧,顺便考察一下自己。
在学习总体分类上还不是太清晰,CSDN上VB具体细节的回复已经很多了,
哪位能归纳总结一下学习语言心得(剔出VB特性),多谢了.#API函数
#ADO #Adodb和Adodc #RecordSet #Update #绑定 #存储过程
#过滤Filter #临时表 #事务 #通配符 模糊查询
#ActiveX #COM组件 #DLL #VxD
#INI #注册表 #启动
#Modem
#EXCEL #Word #XML #插件 #打印 #VBA
#OOP面向对象 #类模块
#安装程序制作工具
#SQL语言
#制作CHM
#菜单 #工具条 #按钮
#打印 #报表
#调试 #错误Error
#钩子 #消息
#控件 DataGrid #DBGrid #vsFlexGrid #vsPrinter #vsView
#控件 ActiveBar #ComboBox #ListBox #ListView #ToolBar
#TreeView #Win9X控件
#屏幕 #窗体
#声音 #bitmap
#鼠标 #键盘
#数据库Access #SQL Server
#数组 #字符串
#图形 #图象
#网络 #通信
#文件
#压缩
#硬件 #控制
#手机
■■■■■■另外有两方面的问题要问:
[1]转换MSDN C代码到VB如果数据类型不属于
ATOM /BOOL /BYTE /CHAR /COLORREF /DWORD /HWND, HDC, HMENU /INT /UINT /LONG
/LPARAM /LPDWORD /LPINT /LPUINT /LPRECT /LPSTR /LPCSTR /LPVOID /LPWORD
/LRESULT /NULL /SHORT /VOID /WORD /WPARAM 等类型应该以何种规则或经验进行转换如果API是{X as long; Y as TypeX},是否可以不声明第二层数据类型TypeX{m as integer; n as single},把Y声明成 Y as Byte等常用类型作为特定用法。
[2]谁能简洁解释下面用语,千万别拷贝名词解释,
请用说明、类比、举例等方法形象说出是什么和能干什么。多态
重写
重构
重载___(二进制重载)
|___(源代码重载)
关联
组合
衍生
继承
继承___单一继承
|___多重继承
基于接口
组件
构件
泛型
派生
前期绑定
后期绑定
构造函数
析构函数
虚函数(虚方法)
覆盖 (重 写)
虚基类
类库
名字空间如果一定要用10000个字说清比尔.盖茨是个什么样的人,你适合当传记作家,
如果用50个字就行,你适合回答我的问题,贡献一下智慧吧,顺便考察一下自己。
解决方案 »
- 我写了一个class,编译成dll后,asp调用正常,现在我想加入api或钩子使用,代码添在这个class什么地方??
- ACCESS 中怎样以另外一个表的字段做为查询条件
- 如何实现文字竖排的效果??
- text输入年月日问题.
- active report里面,怎么得到当前的页码(即第几页)
- 高分求救拉~~~~~~~~~一个关于SQL日期的比较问题!!!!!!!!
- 关于向ACCESS中写如记录的问题!!!!!!!!!!!!!!!!!
- 关于vb中MSFlexGrid,MSHFlexGrid的区别
- 如何取得当前我所点击的DataGrid是哪一行哪一列
- 如何用VB做GIF 或 BMP图象???
- 请教如何用VC写dll文件,传出一个数组给VB?
- 求~打开多个文件的对话框~
基于接口继承
组件,构件,差不多
前期绑定 ,使用new
后期绑定 '使用createobject
其他的vb中没有createobject与new 本质的不同。
createobject与new 的关键区别就是声明后系统对资源的控制权不一样。
createobject是由内存中重新创建一个实例而不是简单的资源计数器+1的概念。如果内存中存在一个这样的实例,编译器不会理会这个实例而是将对象重新创建一个。实际上是一个完全独立的新的资源实例。并且不受GC的资源回收控制,必须自己回收。
new声明的时候,编译器回自动寻找内存中的相应实例,找到了以后,将资源计数器+1,并不会在内存中重新声明内存地址空间,他是受GC限制的,当编译器运行完毕后,会自动将资源编译器里面的该对象的资源计数器-1,如果为计数器0的话就自动释放该对象。
---------------------------------------------------------------1. new 为对象的前期绑定,在建立对象时会通过scm进行对象管理,此方法在编译时慢,运行时快
2.createobject为对象的后期绑定,在建立对象是不通过scm进行对象管理,适应脚本应用程序,客户端或分布式程序,在编译时快,运行所占时间比较慢
3.所有对象都要set object=nothing
4.尽量以dll库建立对象,而不以.ocx建立对象,以减少所占资源
Declare Function CreateProcess Lib "kernel32" Alias "CreateProcessA" (ByVal lpApplicationName As String, ByVal lpCommandLine As String, lpProcessAttributes As SECURITY_ATTRIBUTES, lpThreadAttributes As SECURITY_ATTRIBUTES, ByVal bInheritHandles As Long, ByVal dwCreationFlags As Long, lpEnvironment As Any, ByVal lpCurrentDriectory As String, lpStartupInfo As STARTUPINFO, lpProcessInformation As PROCESS_INFORMATION) As Long但有时我们为了方便使用,可将其修改为:
Declare Function CreateProcessA Lib "kernel32" ( _
ByVal lpApplicationName As Long, _
ByVal lpCommandLine As String, ByVal lpProcessAttributes As Long, ByVal _
lpThreadAttributes As Long, ByVal bInheritHandles As Long, ByVal _
dwCreationFlags As Long, ByVal lpEnvironment As Long, ByVal _
lpCurrentDirectory As Long, lpStartupInfo As STARTUPINFO, _
lpProcessInformation As PROCESS_INFORMATION) As Long
前期绑定 ,使用new
后期绑定 '使用createobject
其他的vb中没有
_______________________________________________________
重载___(二进制重载)----------ActiveX算不算???
类库 ----------VB里也没有! 我想学的是编程语言,学习VB是我学习编程语言的方法,
所以我想了解一些重要概念(不限VB),外加吸取你们的能量。//leesheng(小胜)
最好做出实用的程序来!!!
_______________________________________________________
多谢鼓励,一定努力。 经过一段时间的学习、比较,感觉学习大概可以分成两部分,
一是了解为什么,这需要了解基础概念,估计最后还要去看Windows核心编程一类的东东
二是以实现为目的,以满足市场流行、热点炒作概念(.NET)、客户需求心理、快速开发为导向 我本来是从二开始的,现在又跑到一上去了,我想把刀磨快了,砍起柴来总会事半功倍的!//rainstormmaster(暴风雨 v2.0)
看情况而定?
_______________________________________________________
而定依据?好像如果不需要第二层数据类型TypeX,通常就可以,不知是不是?//hdhai9451(※★菜鳥£☆※)
樓主學幾個月就想掌握那麼多?
_______________________________________________________
平时没时间,忙于本职工作,晚上学到半夜。看学习笔记分类的那些东西,自己就有感觉,
中国程序员是怎么回事,就是盖房子的人,一部分是民工,一部分是建筑师,还有一小部分是
设计师,我们对建筑材料属性有一点了解,对建筑材料的制造过程不太了解,盖房难吗!反正
也不容易,干好了能建一座地标性建筑,干不好就是民工。设计师没想过,建筑师有可能,现
在还是民工阶段,还是一个砌砖不太熟练的民工阶段。
不过你的笔记作得不错,结尾那句说得挺好,偶看了忍不住上来废话。顺便给你解释一点:
#ADO 数据库控制类,要作数据库需要系统地学习。
#Adodb和Adodc Adodb是Ado类的类名。Adodc是Ado数据控件,不用为妙。
#RecordSet Ado中的一个对象,还有Connect对象,这两个对象是基本对象。
#Update 如果是指Recordset的Update,那么就是更新Recordset,将当前Rs的一条记录行进行更新。
#绑定 支持绑定的对象,会直接将数据的更新即时反应到对象中。
#存储过程 SQL的相关名词,可集成多步SQL操作。
#过滤Filter Recordset的属性,可对记录集再筛选。
#临时表 SQL的相关名词,“临时”的表,在当前事务退出之后就会卸载。
#事务 SQL的相关名词,代表一段进程,可以RollBack.
#通配符 “%”,和“Like”搭配使用。
#模糊查询 用了通配符就是模糊查询了。
楼主肯定要失望的,谁有空来这边教你这么多东西
_______________________________________________________________
老大,我一共下载了,5000多篇文章,大部分来自CSDN,笔记应该不缺材料,提问的名词
大部分我都有名词解释,我只是想了解你们是怎么理解和应用的。如果下定决心要学,
有csdn这么好的资源还学不会,不只对不起自己,还对不起csdn。来的人多,每人说点,
就多了。
//后期绑定 '使用createobject我认为所有声明为 object 类型的变量都是后期绑定的。
而所有声明为某一个类的变量都是前期绑定的。然后,VB6里有GC?哇,单词都忘光了,不行,要补习…… 只记得一下这些了。多态 polymorphism VB可以用implements语句实现limited多态,但怎么解释呢?
重载___(二进制重载) overloading 简单地说就是相同的函数名,但不同的参数列表(有时
像 template)
|___(源代码重载)
继承 inheritance 简单地说就是在原有类的基础上添加新的功能。(分public, private,
protected)
继承___单一继承 single(???) inheritance 只从一个类继承
|___多重继承 multiple inheritance 从多个类继承
基于接口 interface-based(???) 符合COM标准???
组件 component 大概就是程序构架里实现某一特定功能的板块吧(?)
派生 derived 派生类( derived class )就是一个从一个或多个类继承下来的类
前期绑定 compile-time binding 应该算COM名词,在编译时按照类的定义生成的
直接调用vtable中类成员的代码
后期绑定 run-time binding 在程序运行时通过automation的IDispatch类间接调用类成员
构造函数 constructor 类实例化时调用
析构函数 destructor 类被删除时调用
虚函数(虚方法) virtual function (method) 在通过基类调用某成员时仍然调用
派生类相应的成员,用vtable来实现。
覆盖 (重写) overriding(???) 就是在派生类中替换掉基类的成员。
虚基类 virtual base class 不知道是不是指以virtual关键词被继承的基类
还是指被继承的抽象类
类库 library(???) 类的库咯,嘿嘿
名字空间 namespace 不好解释,在不同的名称空间下不能直接访问其他名称空间下的标识符。(using除外)以是都是瞎扯的,不能保证准确性。
如果你兴趣浓厚的话还是建议到vc版去问。
Declare Function FunName Lib "???" (ByVal X As Long, ByRef Y As TypeX)as long
或(指针方式):
Declare Function FunName Lib "???" (ByVal X As Long, ByVal Y As Long)as long传值只能:
Declare Function FunName Lib "???" (ByVal X As Long, ByVal Y_m As Long,byval Y_n as Single)as long
ATOM /BOOL /BYTE /CHAR /COLORREF /DWORD /HWND, HDC, HMENU /INT /UINT /LONG
/LPARAM /LPDWORD /LPINT /LPUINT /LPRECT /LPSTR /LPCSTR /LPVOID /LPWORD
/LRESULT /NULL /SHORT /VOID /WORD /WPARAM 等类型应该以何种规则或经验进行转换指针型全部“ByRef *** As Type”(引用形式,主要是结构体)或“ByVal *** as Long”(指针形式)
二级指针就用“ByRef *** As Long”一般情况下只要字节数对应就行
比如可以用Currency代替LARGE_INTEGER
Public Declare Function GetTickCount Lib "kernel32.dll" () As Long
Public Declare Function QueryPerformanceFrequency Lib "kernel32" (lpFrequency As Currency) As Long
Public Declare Function QueryPerformanceCounter Lib "kernel32" (lpPerformanceCount As Currency) As Long
'单位:毫秒
Public Function GetCurTime() As Currency
Static s_IsInit As Long
Static s_Frequency As Currency
If s_IsInit = 0 Then '未初始化
If QueryPerformanceFrequency(s_Frequency) = 0 Then
s_IsInit = -1 '无高精度计数器
Else
s_IsInit = 1
End If
End If
If s_IsInit > 0 Then
Dim CurCount As Currency
Call QueryPerformanceCounter(CurCount)
GetCurTime = CurCount * 1000@ / s_Frequency
'Debug.Print GetCurTime
Else
GetCurTime = GetTickCount()
End If
End Function
我感觉你技术还行,可刚在你的一个回复里看见你才挣2K,我感觉有说不出来的感觉。唉,计算机技术,爱你在心钱难挣。我是搞销售的,可是公司都靠关系搞项目。行业整体技术人员80%与其他行业相比
收入处于偏低,该何去何从呢!!!!!!!!!!!!!!!!!!!!!!!
到现在我用VB已经有五年了,精通谈不上,熟练还是可以说吧。其间写了很多程序,回头看看以前的程序,很明显的感觉到了自己在进步。
以前好些一起和我学编程的朋友差不多都作别的行业去了,现在我的朋友中只有我一个人还在写程序。
不过还好我幸运地找到了CSDN的这个论坛,看到了这么多和我一样喜欢写程序的朋友,再也不感到孤单了。