delphi自学过程
我也是一个新人,学习delphi也是从今年四月份开始的,书也看了,例子也常照写,但就是自己不会写,我不知道问题出在那里,数据库稍微懂一点,知道一些基础的应用,还有项目一起做,但还是不会写,想着都难受。时常听说delphi落时了,又想学.net,又想换java还买了本java的书,但是那些不是看例子就能想得出来的,可能最最主要的一点是我自己对学习的东西理解不透,易忘 ,总是记不住东西,怎么办啊,快到年底了,这样下次不是办法呀,求高人教点迷津,初学者应该走的过程。谢谢
答案:不是有合并排序吗,先用合并排好每一行,然后合并排好每一列(创建一个n*2数组,比较第一列的最小值,放进数组里,一直重复)。
其他:呵呵,我不是来赚分的,工作十几年了。给你一些我的看法:
1、英语不是必要的。你做基础的应用开发,如数据库应用程序,一般的delphi书籍中写的已经够用了,delphi帮助中的常用单词碰到了就查一查学一下。如果你要做深层次的开发,那必须要有好的英语基础,因为无论哪本书都没有delphi的帮助完整,要看delphi的源码并分析,有英语基础是要的。
2、学习编程是长期的。最忌讳的就是今天这种语言、明天那种语言。无论何种语言都有它的优点。你只要有兴趣,持续的学下去就什么都有了。不要有速成的想法。
3、学习编程要注重实践。你可以给自己安排任务去开发一款软件,可以用的软件,可以帮到人的软件,你会发现在开发软件的过程中,你需要这样那样的功能,再研究如何去实现,有目的的进行学习才会有效。不要去刻意记函数。
去网上搜开源的DELPHI源程序,然后对照着做。一定要动手做!不要只看!我也是今年三月份才开始接触DELPHI的,现在半年多下来已经能做不少东西了。 先从你能结束的方面入手,DELPHI是很强大但是术业有专攻,所以不要想一口吃个大胖子,慢慢来,我开始的时候先从数据库入手,后来数据库加串口通讯,现在研究OPC通讯,只要是你能实际接触到的,深入几天应该没问题。 俺也是初学者。。。
专心学一个吧,边学边做,做自己感兴趣的东西,不懂就问,做个笔记把不懂得记下来,日积月累 参考代码:
unit Unit1;
inte易做图ce
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;
Const
MAX_ADAPTER_NAME_LENGTH = 256;
MAX_ADAPTER_DESCRIPTION_LENGTH = 128;
MAX_ADAPTER_ADDRESS_LENGTH = 8;
Type
TIPAddressString = Array [0 .. 4 * 4 - 1] of Char;
PIPAddrString = ^TIPAddrString;
TIPAddrString = Record
Next: PIPAddrString;
IPAddress: TIPAddressString;
IPMask: TIPAddressString;
Context: Integer;
End;
PIPAdapterInfo = ^TIPAdapterInfo;
TIPAdapterInfo = Record { IP_ADAPTER_INFO }
Next: PIPAdapterInfo;
ComboIndex: Integer;
AdapterName: Array [0 .. MAX_ADAPTER_NAME_LENGTH + 3] of Char;
Description: Array [0 .. MAX_ADAPTER_DESCRIPTION_LENGTH + 3] of Char;
AddressLength: Integer;
Address: Array [1 .. MAX_ADAPTER_ADDRESS_LENGTH] of Byte;
Index: Integer;
_Type: Integer;
DHCPEnabled: Integer;
CurrentIPAddress: PIPAddrString;
IPAddressList: TIPAddrString;
GatewayList: TIPAddrString;
End;
type
TForm1 = class(TForm)
Memo1: TMemo;
Button1: TButton;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
Function GetAdaptersInfo(AI: PIPAdapterInfo; Var BufLen: Integer): Integer;
StdCall; External 'iphlpapi.dll' Name 'GetAdaptersInfo';
Function MACToStr(ByteArr: PByte; Len: Integer): String;
Begin
Result := '';
While (Len > 0) do
Begin
Result := Result + IntToHex(ByteArr^, 2) + '-';
ByteArr := Pointer(Integer(ByteArr) + SizeOf(Byte));
Dec(Len);
End;
SetLength(Result, Length(Result) - 1); { remove last dash }
End;
Function GetAddrString(Addr: PIPAddrString): String;
Begin
Result := '';
While (Addr <> nil) do
Begin
Result := Result + 'A: ' + Addr^.IPAddress + ' M: ' + Addr^.IPMask + #13;
Addr := Addr^.Next;
End;
End;
procedure TForm1.Button1Click(Sender: TObject);
var
AI, Work: PIPAdapterInfo;
Size: Integer;
Res: Integer;
begin
Size := 5120;
GetMem(AI, Size);
Work := AI;
Res := GetAdaptersInfo(AI, Size);
If (Res <> ERROR_SUCCESS) Then
Begin
SetLastError(Res);
RaiseLastWin32Error;
exit;
End;
Memo1.Lines.Add('Adapter address: ' + MACToStr(@Work^.Address,
Work^.AddressLength));
repeat
Memo1.Lines.Add(' IP addresses: ' + Work.IPAddressList.IPAddress +
' Gateway Address=' + Work.GatewayList.IPAddress);
Work := Work^.Next;
until (Work = nil);
end;
end. 买几本基础的书,好好看看基础的。
不要听说DELPHI落时了。那都是腿不行,却去怪路不平的人。
专心的学习一门,你要真的转了,坚持下去,不坚持的话,腿不行了,脑子也就。。。。。。
----------------------------------------------------------
腿不行,不要怪路不平。
上一个:如何把用DELPHI编写的程序的文档用数据库的形式记录。
下一个:懂delphi 请进