<HTML><HEAD>
<META HTTP-EQUIV="content-type" CONTENT="text/html; charset=koi8-r">
<TITLE>Ada95 Lovelace Tutorial ������ 8.5 - �������� �������� � ���� Unbounded_String</TITLE>
<LINK REV="made" HREF="mailto:dwheeler@ida.org">
<!-- Below are RSACi and SafeSurf ratings for this material. -->
<META http-equiv="PICS-Label" content='(PICS-1.0 "http://www.rsac.org/ratingsv01.html" l gen true comment "RSACi North America Server" by "dwheeler@ida.org" for "http://www.adahome.com/Tutorials/Lovelace" on "1996.04.04T08:15-0500" exp "1997.07.01T08:15-0500" r (n 0 s 0 v 0 l 0))'>
<META http-equiv="PICS-Label" content='(PICS-1.0 "http://www.classify.org/safesurf/" l gen true for "http://www.adahome.com/Tutorials/Lovelace/" by "dwheeler@ida.org" r (SS~~000 1 SS~~100 1))'>
</HEAD>
<BODY BGCOLOR="#FFFFFF">
<H1><FONT COLOR="#996600">������ 8.5 - �������� �������� � ���� Unbounded_String</FONT></H1>
��� Unbounded_String ��������� � ������ Ada.Strings.Unbounded.
�������, ����� ������������ ������ ���, ���������� ���������� ����� Ada.Strings.  
Unbounded ��� ������ ������������� ``with''. ���� ����� ����� �������������  
��������� �������� ������� �������� ��� ����� Unbounded_String. �  
������� <A HREF="http://www.adahome.com/rm95/rm9x-A-04-05.html">Ada RM  A.4.5
���� ������ �������� ������ Ada.Strings.Unbounded.</A>
<P>
��������� ������ ��������:
<UL>
<LI>
������� To_Unbounded_String ��������� �������� ���� String �  
��������������� ��� � ��� Unbounded_String. ��� ������� �� ������  
�������, ��������, ���  ������������ ��������� �������� ����  
Unbounded_String, ��� ����� ����������������� ����.
<LI>
������� To_String, ��������, ��������� �������� ���� Unbounded_String  
� ��������������� ��� � ��� String.
<LI>
������� Length  ��������� Unbounded_String � ���������� �������  
�������� ���������� �������� � ���.
<LI>
��������� Append  ��������� ��� ��������� � ������������ �������� �������  
��������� � ����� �������. ������ �������� ������ ���� ����  
Unbounded_String, � ������ - ���� String ��� Unbounded_String.
<LI>
������� Element ��������� �� ��������� �������� Unbounded_String (��������  
<EM>Source</EM>) ������ � ��������� ������� (�������� <EM>index</EM>). ����� ������
 ������ ����� ������ 1, ��� � �������;  � C �  C++ ������� ���������� � ����. ����  
��������� ������� �������� ������� Element:
<PRE>
  function Element (Source : in Unbounded_String; Index  : in Positive)
                    return Character;
</PRE>
<LI>
��������� Replace_Element �������� �������� �� ��������� � ������� Element; 
��� ��������� �������� ������ � �������� �������. 
���� - ������� ����������� Replace_Element:
<PRE>
  procedure Replace_Element (Source : in out Unbounded_String;
                             Index  : in Positive;
                             By     : in Character);
</PRE>
<LI>
������� Slice ��������� �������� ���� Unbounded_String � ����������  
��������� � ���, �� ���� ��� ������� ����� ��������� ������ �  
������� ���������. Slice ���������� String, ������� ����  
������������ �������� ����� �������������� ��� Unbounded_String - 
����������� ������� To_Unbounded_String.
<PRE>
  function Slice (Source : in Unbounded_String;
                  Low    : in Positive;
                  High   : in Natural) return String;

</PRE>
<LI>
��������� Insert ��������� �������� New Item (���� String ) � ���������  
��� �������� � Unbounded_String ����� �������� ��������. ���� ������  
�������, ��� ������� ����� Unbounded_String. �������� ���������:
<PRE>
  procedure Insert (Source   : in out Unbounded_String;
                    Before   : in Positive;
                    New_Item : in String);
</PRE>
<LI>
��������� Delete ��������� Unbounded_String � ��� �������, � �������  
�������,  ����� ��������� ���������� ��������� (������� ��������� �  
��������). �� ��������:
<PRE>
Procedure Delete
  procedure Delete (Source  : in out Unbounded_String;
                    From    : in Positive;
                    Through : in Natural);
</PRE>
</UL>
<P>
��������� ��������� (�����, ��� "=" � "&lt;" )  ����� ���������� � ������  
������. ����� ����, ������� ������ ������������ ��� ��������� ��� ������  
Unbounded_String,  ������� "&amp;" (������� ���������� ��� ������ ���� 
Unbounded_String), Translate, Trim, Head, Tail, Index � Find_Token.
<P>
��� ������������ �������� ����� ���������� ������ ����� ������������  
�������� ������������ (:=). � ������� �� ���� String ����� ����������  
Unbounded_String �� ����������� ������ ���� �����������. 

<HR><P>
<IMG SRC="q.gif" ALT="" HEIGHT=34 WIDTH=23>
<A NAME="quiz"><FONT SIZE=+3 COLOR="#339900">����������:</FONT></A>
<P>
����� ��������� ��������� �������� ���������� ������� ��������  
���������� ``Input'' ���� Unbounded_String?

<OL>
<LI><A HREF="s8s5r1.htm">Element(Input, 4)</A>
<LI><A HREF="s8s5r2.htm">Replace_Element(Input, 4, 'L')</A>
<LI><A HREF="s8s5r3.htm">Element(4, Input)</A>
</OL>
<HR>
�� ������ �����:
<P>
<TABLE BORDER=0><TR>
<TH><A HREF="s8s4.htm">
<IMG SRC="barrowl.gif" ALT="PREVIOUS " HEIGHT=31 WIDTH=31>
������� � ����������� �������</A>
<P></TH>

<TH><A HREF="s8sf.htm">
<IMG SRC="barrowr.gif" ALT="NEXT     " HEIGHT=31 WIDTH=31>
������� � ���������� �������</A>
<P></TH>

<TH><A HREF="lesson8.htm">
<IMG SRC="barrowu.gif" ALT="OUTLINE  " HEIGHT=31 WIDTH=31>
��������� � ���������� ����� 8</A>
<P></TH>
</TR></TABLE>
<P>

<P>
<FONT SIZE=2>
<ADDRESS><A HREF="dwheeler.htm">David A. Wheeler (dwheeler@ida.org)</A></ADDRESS>
<BR>
<I>
�������: <A HREF="mailto:jus@univ.kiev.ua">���� �������</A>
&nbsp;&nbsp;����� �������� ��������: <A HREF="mailto:app@polytech.poltava.ua">�.�. �����</A>
</I>
<P>
�������� ����� ����� ��������� ��������� �� ������
"<A HREF="http://www.adahome.com/Tutorials/Lovelace/s8s5.htm">http://www.adahome.com/Tutorials/Lovelace/s8s5.htm</A>".
<P>
�������� ����� �������� ��������� �� ����� <A HREF="http://www.ada-ru.org">http://www.ada-ru.org</A>
</FONT>
<!-- This text is part of the Ada95 Lovelace tutorial program. -->
<!-- For the contents of lesson 18, the following applies: -->
<!--  Copyright (C) 1996 Ada Resource Association -->
<!--  Copyright granted to the ARA under the condition that this text -->
<!--  will be redistributed to the public domain, without restriction; -->
<!--  you may use this information in any way you with, commercially or not, -->
<!--  without restriction. -->
<!-- = -->
<!-- For all other files in Ada95 Lovelace tutorial, the following applies: -->
<!--  Copyright (C) 2003 David A. Wheeler -->
<!--  This program is free software; you can redistribute it and/or modify -->
<!--  it under the terms of the GNU General Public License as published by -->
<!--  the Free Software Foundation; either version 2 of the License, or -->
<!--  (at your option) any later version. -->
<!--  This freedom only applies to the electronic version; the author -->
<!--  and/or publisher retain all rights to non-electronic versions. -->
<!-- = -->
<!-- This program is distributed in the hope that it will be useful, -->
<!-- but WITHOUT ANY WARRANTY; without even the implied warranty of -->
<!-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the -->
<!-- GNU General Public License for more details. -->
<!-- = -->
<!-- You should have received a copy of the GNU General Public License -->
<!-- along with this program; if not, write to the Free Software -->
<!-- Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. -->
</BODY>
</HTML>