443 lines
39 KiB
HTML
443 lines
39 KiB
HTML
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
|
<html xmlns="http://www.w3.org/1999/xhtml">
|
|
<head>
|
|
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
|
|
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
|
|
<meta name="generator" content="Doxygen 1.8.13"/>
|
|
<meta name="viewport" content="width=device-width, initial-scale=1"/>
|
|
<title>PIP: PIVector< T > Class Template Reference</title>
|
|
<link href="tabs.css" rel="stylesheet" type="text/css"/>
|
|
<script type="text/javascript" src="jquery.js"></script>
|
|
<script type="text/javascript" src="dynsections.js"></script>
|
|
<link href="navtree.css" rel="stylesheet" type="text/css"/>
|
|
<script type="text/javascript" src="resize.js"></script>
|
|
<script type="text/javascript" src="navtreedata.js"></script>
|
|
<script type="text/javascript" src="navtree.js"></script>
|
|
<script type="text/javascript">
|
|
$(document).ready(initResizable);
|
|
</script>
|
|
<link href="doxygen.css" rel="stylesheet" type="text/css" />
|
|
</head>
|
|
<body>
|
|
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
|
|
<div id="titlearea">
|
|
<table cellspacing="0" cellpadding="0">
|
|
<tbody>
|
|
<tr style="height: 56px;">
|
|
<td id="projectalign" style="padding-left: 0.5em;">
|
|
<div id="projectname">PIP
|
|
 <span id="projectnumber">1.4.0</span>
|
|
</div>
|
|
<div id="projectbrief">Platform-Independent Primitives</div>
|
|
</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
</div>
|
|
<!-- end header part -->
|
|
<!-- Generated by Doxygen 1.8.13 -->
|
|
<script type="text/javascript" src="menudata.js"></script>
|
|
<script type="text/javascript" src="menu.js"></script>
|
|
<script type="text/javascript">
|
|
$(function() {
|
|
initMenu('',false,false,'search.php','Search');
|
|
});
|
|
</script>
|
|
<div id="main-nav"></div>
|
|
</div><!-- top -->
|
|
<div id="side-nav" class="ui-resizable side-nav-resizable">
|
|
<div id="nav-tree">
|
|
<div id="nav-tree-contents">
|
|
<div id="nav-sync" class="sync"></div>
|
|
</div>
|
|
</div>
|
|
<div id="splitbar" style="-moz-user-select:none;"
|
|
class="ui-resizable-handle">
|
|
</div>
|
|
</div>
|
|
<script type="text/javascript">
|
|
$(document).ready(function(){initNavTree('class_p_i_vector.html','');});
|
|
</script>
|
|
<div id="doc-content">
|
|
<div class="header">
|
|
<div class="summary">
|
|
<a href="#pub-methods">Public Member Functions</a> |
|
|
<a href="#pub-static-methods">Static Public Member Functions</a> |
|
|
<a href="class_p_i_vector-members.html">List of all members</a> </div>
|
|
<div class="headertitle">
|
|
<div class="title">PIVector< T > Class Template Reference</div> </div>
|
|
</div><!--header-->
|
|
<div class="contents">
|
|
|
|
<p>Dynamic array of any type.
|
|
<a href="class_p_i_vector.html#details">More...</a></p>
|
|
|
|
<p>Inherited by PIStack< T >.</p>
|
|
<table class="memberdecls">
|
|
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
|
|
Public Member Functions</h2></td></tr>
|
|
<tr class="memitem:a1c666fc2ba39eff314508f1420530875"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_vector.html#a1c666fc2ba39eff314508f1420530875">PIVector</a> ()</td></tr>
|
|
<tr class="separator:a1c666fc2ba39eff314508f1420530875"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:aee2ea2acd9ad304537c0b81a6fcb6e77"><td class="memItemLeft" align="right" valign="top"><a id="aee2ea2acd9ad304537c0b81a6fcb6e77"></a>
|
|
size_t </td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_vector.html#aee2ea2acd9ad304537c0b81a6fcb6e77">size</a> () const</td></tr>
|
|
<tr class="memdesc:aee2ea2acd9ad304537c0b81a6fcb6e77"><td class="mdescLeft"> </td><td class="mdescRight">Elements count. <br /></td></tr>
|
|
<tr class="separator:aee2ea2acd9ad304537c0b81a6fcb6e77"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a557b61aed23c6ec1ec60427fd87448d8"><td class="memItemLeft" align="right" valign="top"><a id="a557b61aed23c6ec1ec60427fd87448d8"></a>
|
|
ssize_t </td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_vector.html#a557b61aed23c6ec1ec60427fd87448d8">size_s</a> () const</td></tr>
|
|
<tr class="memdesc:a557b61aed23c6ec1ec60427fd87448d8"><td class="mdescLeft"> </td><td class="mdescRight">Elements count. <br /></td></tr>
|
|
<tr class="separator:a557b61aed23c6ec1ec60427fd87448d8"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a4b8fbd7b71957294736a8a630b84fe85"><td class="memItemLeft" align="right" valign="top"><a id="a4b8fbd7b71957294736a8a630b84fe85"></a>
|
|
bool </td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_vector.html#a4b8fbd7b71957294736a8a630b84fe85">isEmpty</a> () const</td></tr>
|
|
<tr class="memdesc:a4b8fbd7b71957294736a8a630b84fe85"><td class="mdescLeft"> </td><td class="mdescRight">Return <code>"true"</code> if vector is empty, i.e. size = 0. <br /></td></tr>
|
|
<tr class="separator:a4b8fbd7b71957294736a8a630b84fe85"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:afb5b4f1521561b82ef18a740b89f3838"><td class="memItemLeft" align="right" valign="top"><a id="afb5b4f1521561b82ef18a740b89f3838"></a>
|
|
T & </td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_vector.html#afb5b4f1521561b82ef18a740b89f3838">back</a> ()</td></tr>
|
|
<tr class="memdesc:afb5b4f1521561b82ef18a740b89f3838"><td class="mdescLeft"> </td><td class="mdescRight">Last element of the vector. <br /></td></tr>
|
|
<tr class="separator:afb5b4f1521561b82ef18a740b89f3838"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:afb958ae243fbf6901490067eab4f1570"><td class="memItemLeft" align="right" valign="top"><a id="afb958ae243fbf6901490067eab4f1570"></a>
|
|
const T & </td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_vector.html#afb958ae243fbf6901490067eab4f1570">back</a> () const</td></tr>
|
|
<tr class="memdesc:afb958ae243fbf6901490067eab4f1570"><td class="mdescLeft"> </td><td class="mdescRight">Last element of the vector. <br /></td></tr>
|
|
<tr class="separator:afb958ae243fbf6901490067eab4f1570"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:abf6923dacf515f1f433544717d615999"><td class="memItemLeft" align="right" valign="top"><a id="abf6923dacf515f1f433544717d615999"></a>
|
|
T & </td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_vector.html#abf6923dacf515f1f433544717d615999">front</a> ()</td></tr>
|
|
<tr class="memdesc:abf6923dacf515f1f433544717d615999"><td class="mdescLeft"> </td><td class="mdescRight">First element of the vector. <br /></td></tr>
|
|
<tr class="separator:abf6923dacf515f1f433544717d615999"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a79954019725879e8966b625ea9f2b7de"><td class="memItemLeft" align="right" valign="top"><a id="a79954019725879e8966b625ea9f2b7de"></a>
|
|
const T & </td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_vector.html#a79954019725879e8966b625ea9f2b7de">front</a> () const</td></tr>
|
|
<tr class="memdesc:a79954019725879e8966b625ea9f2b7de"><td class="mdescLeft"> </td><td class="mdescRight">First element of the vector. <br /></td></tr>
|
|
<tr class="separator:a79954019725879e8966b625ea9f2b7de"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a3ddcaf02f4950306b6acf7470568ce2c"><td class="memItemLeft" align="right" valign="top"><a id="a3ddcaf02f4950306b6acf7470568ce2c"></a>
|
|
bool </td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_vector.html#a3ddcaf02f4950306b6acf7470568ce2c">operator==</a> (const <a class="el" href="class_p_i_vector.html">PIVector</a>< T > &t) const</td></tr>
|
|
<tr class="memdesc:a3ddcaf02f4950306b6acf7470568ce2c"><td class="mdescLeft"> </td><td class="mdescRight">Compare with vector "t". <br /></td></tr>
|
|
<tr class="separator:a3ddcaf02f4950306b6acf7470568ce2c"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a7c6d16ec59e9f886a7cfc6bc07f8edd1"><td class="memItemLeft" align="right" valign="top"><a id="a7c6d16ec59e9f886a7cfc6bc07f8edd1"></a>
|
|
bool </td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_vector.html#a7c6d16ec59e9f886a7cfc6bc07f8edd1">operator!=</a> (const <a class="el" href="class_p_i_vector.html">PIVector</a>< T > &t) const</td></tr>
|
|
<tr class="memdesc:a7c6d16ec59e9f886a7cfc6bc07f8edd1"><td class="mdescLeft"> </td><td class="mdescRight">Compare with vector "t". <br /></td></tr>
|
|
<tr class="separator:a7c6d16ec59e9f886a7cfc6bc07f8edd1"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:ac3c6084cda65446d087920e358da7e81"><td class="memItemLeft" align="right" valign="top"><a id="ac3c6084cda65446d087920e358da7e81"></a>
|
|
bool </td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_vector.html#ac3c6084cda65446d087920e358da7e81">contains</a> (const T &v) const</td></tr>
|
|
<tr class="memdesc:ac3c6084cda65446d087920e358da7e81"><td class="mdescLeft"> </td><td class="mdescRight">Return <code>"true"</code> if vector has at least one element equal "t". <br /></td></tr>
|
|
<tr class="separator:ac3c6084cda65446d087920e358da7e81"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:adc1fc9ae977983d0f780b5c75691f926"><td class="memItemLeft" align="right" valign="top"><a id="adc1fc9ae977983d0f780b5c75691f926"></a>
|
|
int </td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_vector.html#adc1fc9ae977983d0f780b5c75691f926">etries</a> (const T &v) const</td></tr>
|
|
<tr class="memdesc:adc1fc9ae977983d0f780b5c75691f926"><td class="mdescLeft"> </td><td class="mdescRight">Return how many times element "t" appears in vector. <br /></td></tr>
|
|
<tr class="separator:adc1fc9ae977983d0f780b5c75691f926"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a1eac8cb055835b44a4d7b718e976fbc3"><td class="memItemLeft" align="right" valign="top"><a id="a1eac8cb055835b44a4d7b718e976fbc3"></a>
|
|
<a class="el" href="class_p_i_vector.html">PIVector</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_vector.html#a1eac8cb055835b44a4d7b718e976fbc3">clear</a> ()</td></tr>
|
|
<tr class="memdesc:a1eac8cb055835b44a4d7b718e976fbc3"><td class="mdescLeft"> </td><td class="mdescRight">Clear vector. Equivalent to call <code>"resize(0)"</code> <br /></td></tr>
|
|
<tr class="separator:a1eac8cb055835b44a4d7b718e976fbc3"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:aa6b5cd062e622fa4e3460249c11a2eb2"><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_p_i_vector.html">PIVector</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_vector.html#aa6b5cd062e622fa4e3460249c11a2eb2">fill</a> (const T &f=T())</td></tr>
|
|
<tr class="memdesc:aa6b5cd062e622fa4e3460249c11a2eb2"><td class="mdescLeft"> </td><td class="mdescRight">Fill vector with elements "t" leave size is unchanged and return reference to vector. <a href="#aa6b5cd062e622fa4e3460249c11a2eb2">More...</a><br /></td></tr>
|
|
<tr class="separator:aa6b5cd062e622fa4e3460249c11a2eb2"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:af3dc895f63a2b64927918f1be97e8947"><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_p_i_vector.html">PIVector</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_vector.html#af3dc895f63a2b64927918f1be97e8947">resize</a> (size_t new_size, const T &f=T())</td></tr>
|
|
<tr class="memdesc:af3dc895f63a2b64927918f1be97e8947"><td class="mdescLeft"> </td><td class="mdescRight">Resize vector to size "size". <a href="#af3dc895f63a2b64927918f1be97e8947">More...</a><br /></td></tr>
|
|
<tr class="separator:af3dc895f63a2b64927918f1be97e8947"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a0e43a8466d800cd8ac31f91dc8f6e6a3"><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_p_i_vector.html">PIVector</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_vector.html#a0e43a8466d800cd8ac31f91dc8f6e6a3">remove</a> (size_t index, size_t count=1)</td></tr>
|
|
<tr class="memdesc:a0e43a8466d800cd8ac31f91dc8f6e6a3"><td class="mdescLeft"> </td><td class="mdescRight">Remove one element by index "index" and return reference to vector. <a href="#a0e43a8466d800cd8ac31f91dc8f6e6a3">More...</a><br /></td></tr>
|
|
<tr class="separator:a0e43a8466d800cd8ac31f91dc8f6e6a3"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:ad05af044be450c64a351df48a96fea97"><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_p_i_vector.html">PIVector</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_vector.html#ad05af044be450c64a351df48a96fea97">sort</a> (CompareFunc compare=<a class="el" href="class_p_i_vector.html#a3e72f0fc2245a55a29b1a1c3ce0d36e2">compare_func</a>)</td></tr>
|
|
<tr class="memdesc:ad05af044be450c64a351df48a96fea97"><td class="mdescLeft"> </td><td class="mdescRight">Sort vector using quick sort algorithm and standard compare function. <a href="#ad05af044be450c64a351df48a96fea97">More...</a><br /></td></tr>
|
|
<tr class="separator:ad05af044be450c64a351df48a96fea97"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a834ee327d55d935cefe8358169bc4aee"><td class="memItemLeft" align="right" valign="top"><a id="a834ee327d55d935cefe8358169bc4aee"></a>
|
|
<a class="el" href="class_p_i_vector.html">PIVector</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_vector.html#a834ee327d55d935cefe8358169bc4aee">enlarge</a> (llong piv_size)</td></tr>
|
|
<tr class="memdesc:a834ee327d55d935cefe8358169bc4aee"><td class="mdescLeft"> </td><td class="mdescRight">Increase vector size with "size" elements. <br /></td></tr>
|
|
<tr class="separator:a834ee327d55d935cefe8358169bc4aee"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a016a1c78ec7270e6edccc81d7c8075ef"><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_p_i_vector.html">PIVector</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_vector.html#a016a1c78ec7270e6edccc81d7c8075ef">removeOne</a> (const T &v)</td></tr>
|
|
<tr class="memdesc:a016a1c78ec7270e6edccc81d7c8075ef"><td class="mdescLeft"> </td><td class="mdescRight">Remove no more than one element equal "v" and return reference to vector. <a href="#a016a1c78ec7270e6edccc81d7c8075ef">More...</a><br /></td></tr>
|
|
<tr class="separator:a016a1c78ec7270e6edccc81d7c8075ef"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a5c8b3839e69249aa672e76017af2be1f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_p_i_vector.html">PIVector</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_vector.html#a5c8b3839e69249aa672e76017af2be1f">removeAll</a> (const T &v)</td></tr>
|
|
<tr class="memdesc:a5c8b3839e69249aa672e76017af2be1f"><td class="mdescLeft"> </td><td class="mdescRight">Remove all elements equal "v" and return reference to vector. <a href="#a5c8b3839e69249aa672e76017af2be1f">More...</a><br /></td></tr>
|
|
<tr class="separator:a5c8b3839e69249aa672e76017af2be1f"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a6b0cf989ba342d06c8cf21a55d434a8e"><td class="memItemLeft" align="right" valign="top"><a id="a6b0cf989ba342d06c8cf21a55d434a8e"></a>
|
|
<a class="el" href="class_p_i_vector.html">PIVector</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_vector.html#a6b0cf989ba342d06c8cf21a55d434a8e">push_back</a> (const T &v)</td></tr>
|
|
<tr class="memdesc:a6b0cf989ba342d06c8cf21a55d434a8e"><td class="mdescLeft"> </td><td class="mdescRight">Add new element "t" at the end of vector and return reference to vector. <br /></td></tr>
|
|
<tr class="separator:a6b0cf989ba342d06c8cf21a55d434a8e"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a24a59359b4ddeadc529bf35a11f38f6f"><td class="memItemLeft" align="right" valign="top"><a id="a24a59359b4ddeadc529bf35a11f38f6f"></a>
|
|
<a class="el" href="class_p_i_vector.html">PIVector</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_vector.html#a24a59359b4ddeadc529bf35a11f38f6f">operator<<</a> (const <a class="el" href="class_p_i_vector.html">PIVector</a>< T > &other)</td></tr>
|
|
<tr class="memdesc:a24a59359b4ddeadc529bf35a11f38f6f"><td class="mdescLeft"> </td><td class="mdescRight">Add vector "t" at the end of vector and return reference to vector. <br /></td></tr>
|
|
<tr class="separator:a24a59359b4ddeadc529bf35a11f38f6f"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:adadda79d8436c657fd6039e8e090da67"><td class="memItemLeft" align="right" valign="top"><a id="adadda79d8436c657fd6039e8e090da67"></a>
|
|
<a class="el" href="class_p_i_vector.html">PIVector</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_vector.html#adadda79d8436c657fd6039e8e090da67">push_front</a> (const T &v)</td></tr>
|
|
<tr class="memdesc:adadda79d8436c657fd6039e8e090da67"><td class="mdescLeft"> </td><td class="mdescRight">Add new element "t" at the beginning of vector and return reference to vector. <br /></td></tr>
|
|
<tr class="separator:adadda79d8436c657fd6039e8e090da67"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a8f5297d0ee721627ad8c545980756b68"><td class="memItemLeft" align="right" valign="top"><a id="a8f5297d0ee721627ad8c545980756b68"></a>
|
|
<a class="el" href="class_p_i_vector.html">PIVector</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_vector.html#a8f5297d0ee721627ad8c545980756b68">pop_back</a> ()</td></tr>
|
|
<tr class="memdesc:a8f5297d0ee721627ad8c545980756b68"><td class="mdescLeft"> </td><td class="mdescRight">Remove one element from the end of vector and return reference to vector. <br /></td></tr>
|
|
<tr class="separator:a8f5297d0ee721627ad8c545980756b68"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a94b63d4c818f6e27415b8895f37805b9"><td class="memItemLeft" align="right" valign="top"><a id="a94b63d4c818f6e27415b8895f37805b9"></a>
|
|
<a class="el" href="class_p_i_vector.html">PIVector</a>< T > & </td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_vector.html#a94b63d4c818f6e27415b8895f37805b9">pop_front</a> ()</td></tr>
|
|
<tr class="memdesc:a94b63d4c818f6e27415b8895f37805b9"><td class="mdescLeft"> </td><td class="mdescRight">Remove one element from the beginning of vector and return reference to vector. <br /></td></tr>
|
|
<tr class="separator:a94b63d4c818f6e27415b8895f37805b9"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:ae951eefed7d44357b714224d9f4558b1"><td class="memItemLeft" align="right" valign="top"><a id="ae951eefed7d44357b714224d9f4558b1"></a>
|
|
T </td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_vector.html#ae951eefed7d44357b714224d9f4558b1">take_back</a> ()</td></tr>
|
|
<tr class="memdesc:ae951eefed7d44357b714224d9f4558b1"><td class="mdescLeft"> </td><td class="mdescRight">Remove one element from the end of vector and return it. <br /></td></tr>
|
|
<tr class="separator:ae951eefed7d44357b714224d9f4558b1"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a69dbb89bfade5d2c6e4ad18c9a33f718"><td class="memItemLeft" align="right" valign="top"><a id="a69dbb89bfade5d2c6e4ad18c9a33f718"></a>
|
|
T </td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_vector.html#a69dbb89bfade5d2c6e4ad18c9a33f718">take_front</a> ()</td></tr>
|
|
<tr class="memdesc:a69dbb89bfade5d2c6e4ad18c9a33f718"><td class="mdescLeft"> </td><td class="mdescRight">Remove one element from the beginning of vector and return it. <br /></td></tr>
|
|
<tr class="separator:a69dbb89bfade5d2c6e4ad18c9a33f718"><td class="memSeparator" colspan="2"> </td></tr>
|
|
</table><table class="memberdecls">
|
|
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-static-methods"></a>
|
|
Static Public Member Functions</h2></td></tr>
|
|
<tr class="memitem:a3e72f0fc2245a55a29b1a1c3ce0d36e2"><td class="memItemLeft" align="right" valign="top"><a id="a3e72f0fc2245a55a29b1a1c3ce0d36e2"></a>
|
|
static int </td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_i_vector.html#a3e72f0fc2245a55a29b1a1c3ce0d36e2">compare_func</a> (const T *t0, const T *t1)</td></tr>
|
|
<tr class="memdesc:a3e72f0fc2245a55a29b1a1c3ce0d36e2"><td class="mdescLeft"> </td><td class="mdescRight">Standard compare function for type "Type". Return 0 if t0 = t1, -1 if t0 < t1 and 1 if t0 > t1. <br /></td></tr>
|
|
<tr class="separator:a3e72f0fc2245a55a29b1a1c3ce0d36e2"><td class="memSeparator" colspan="2"> </td></tr>
|
|
</table>
|
|
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
|
|
<div class="textblock"><h3>template<typename T><br />
|
|
class PIVector< T ></h3>
|
|
|
|
<p>Dynamic array of any type. </p>
|
|
<p>This class used to store dynamic array of any type of data. In memory data stored linear. You can insert item in any place of remove some items from any place. For quick add elements this is stream operator <<. </p>
|
|
</div><h2 class="groupheader">Constructor & Destructor Documentation</h2>
|
|
<a id="a1c666fc2ba39eff314508f1420530875"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a1c666fc2ba39eff314508f1420530875">◆ </a></span>PIVector()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<div class="memtemplate">
|
|
template<typename T> </div>
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname"><a class="el" href="class_p_i_vector.html">PIVector</a>< T >::<a class="el" href="class_p_i_vector.html">PIVector</a> </td>
|
|
<td>(</td>
|
|
<td class="paramname"></td><td>)</td>
|
|
<td></td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
<p>Contructs an empty vector </p>
|
|
|
|
</div>
|
|
</div>
|
|
<h2 class="groupheader">Member Function Documentation</h2>
|
|
<a id="aa6b5cd062e622fa4e3460249c11a2eb2"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#aa6b5cd062e622fa4e3460249c11a2eb2">◆ </a></span>fill()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<div class="memtemplate">
|
|
template<typename T> </div>
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname"><a class="el" href="class_p_i_vector.html">PIVector</a>< T > & <a class="el" href="class_p_i_vector.html">PIVector</a>< T >::fill </td>
|
|
<td>(</td>
|
|
<td class="paramtype">const T & </td>
|
|
<td class="paramname"><em>f</em> = <code>T()</code></td><td>)</td>
|
|
<td></td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Fill vector with elements "t" leave size is unchanged and return reference to vector. </p>
|
|
<p>Example: </p><div class="fragment"><div class="line"><a class="code" href="class_p_i_vector.html">PIVector<char></a> vec;</div><div class="line">vec << <span class="charliteral">'1'</span> << <span class="charliteral">'2'</span> << <span class="charliteral">'3'</span> << <span class="charliteral">'4'</span> << <span class="charliteral">'5'</span>;</div><div class="line">vec.<a class="code" href="class_p_i_vector.html#aa6b5cd062e622fa4e3460249c11a2eb2">fill</a>(<span class="charliteral">'0'</span>);</div><div class="line"><a class="code" href="picontainers_8h.html#a807914d038e5a193d2e36b4b82b6df96">piForeachC</a> (<span class="keywordtype">char</span> i, vec)</div><div class="line"> cout << i << <span class="stringliteral">", "</span>;</div><div class="line"><span class="comment">// 0, 0, 0, 0, 0, </span></div></div><!-- fragment -->
|
|
</div>
|
|
</div>
|
|
<a id="af3dc895f63a2b64927918f1be97e8947"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#af3dc895f63a2b64927918f1be97e8947">◆ </a></span>resize()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<div class="memtemplate">
|
|
template<typename T> </div>
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">void <a class="el" href="class_p_i_vector.html">PIVector</a>< T >::resize </td>
|
|
<td>(</td>
|
|
<td class="paramtype">size_t </td>
|
|
<td class="paramname"><em>new_size</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">const T & </td>
|
|
<td class="paramname"><em>f</em> = <code>T()</code> </td>
|
|
</tr>
|
|
<tr>
|
|
<td></td>
|
|
<td>)</td>
|
|
<td></td><td></td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Resize vector to size "size". </p>
|
|
<p>Elements removed from end of vector if new size < old size, or added new elements = "new_type" if new size > old size.<br />
|
|
Example: </p><div class="fragment"><div class="line"><a class="code" href="class_p_i_vector.html">PIVector<int></a> vec;</div><div class="line">vec << 1 << 2;</div><div class="line">vec.<a class="code" href="class_p_i_vector.html#af3dc895f63a2b64927918f1be97e8947">resize</a>(4);</div><div class="line"><a class="code" href="picontainers_8h.html#a807914d038e5a193d2e36b4b82b6df96">piForeachC</a> (<span class="keywordtype">int</span> & i, vec)</div><div class="line"> cout << i << <span class="stringliteral">", "</span>;</div><div class="line"><span class="comment">// 1, 2, 0, 0, </span></div><div class="line">vec.<a class="code" href="class_p_i_vector.html#af3dc895f63a2b64927918f1be97e8947">resize</a>(3);</div><div class="line"><a class="code" href="picontainers_8h.html#a807914d038e5a193d2e36b4b82b6df96">piForeachC</a> (<span class="keywordtype">int</span> & i, vec)</div><div class="line"> cout << i << <span class="stringliteral">", "</span>;</div><div class="line"><span class="comment">// 1, 2, 0, </span></div></div><!-- fragment --><dl class="section see"><dt>See also</dt><dd><em><a class="el" href="class_p_i_vector.html#aee2ea2acd9ad304537c0b81a6fcb6e77" title="Elements count. ">size()</a></em>, <em><a class="el" href="class_p_i_vector.html#a1eac8cb055835b44a4d7b718e976fbc3" title="Clear vector. Equivalent to call "resize(0)" ">clear()</a></em> </dd></dl>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a0e43a8466d800cd8ac31f91dc8f6e6a3"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a0e43a8466d800cd8ac31f91dc8f6e6a3">◆ </a></span>remove()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<div class="memtemplate">
|
|
template<typename T> </div>
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname"><a class="el" href="class_p_i_vector.html">PIVector</a>< T > & <a class="el" href="class_p_i_vector.html">PIVector</a>< T >::remove </td>
|
|
<td>(</td>
|
|
<td class="paramtype">size_t </td>
|
|
<td class="paramname"><em>index</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">size_t </td>
|
|
<td class="paramname"><em>count</em> = <code>1</code> </td>
|
|
</tr>
|
|
<tr>
|
|
<td></td>
|
|
<td>)</td>
|
|
<td></td><td></td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Remove one element by index "index" and return reference to vector. </p>
|
|
<p>Remove "count" elements by first index "index" and return reference to vector.</p>
|
|
<p>Example: </p><div class="fragment"><div class="line"><a class="code" href="class_p_i_vector.html">PIVector<char></a> vec;</div><div class="line">vec << <span class="charliteral">'1'</span> << <span class="charliteral">'2'</span> << <span class="charliteral">'3'</span> << <span class="charliteral">'4'</span> << <span class="charliteral">'5'</span>;</div><div class="line">vec.<a class="code" href="class_p_i_vector.html#a0e43a8466d800cd8ac31f91dc8f6e6a3">remove</a>(1);</div><div class="line"><a class="code" href="picontainers_8h.html#a807914d038e5a193d2e36b4b82b6df96">piForeachC</a> (<span class="keywordtype">char</span> i, vec)</div><div class="line"> cout << i << <span class="stringliteral">", "</span>;</div><div class="line"><span class="comment">// 1, 3, 4, 5, </span></div></div><!-- fragment --><dl class="section see"><dt>See also</dt><dd><em><a class="el" href="class_p_i_vector.html#a016a1c78ec7270e6edccc81d7c8075ef" title="Remove no more than one element equal "v" and return reference to vector. ">removeOne()</a></em>, <em><a class="el" href="class_p_i_vector.html#a5c8b3839e69249aa672e76017af2be1f" title="Remove all elements equal "v" and return reference to vector. ">removeAll()</a></em> </dd></dl>
|
|
<p>Example: </p><div class="fragment"><div class="line"><a class="code" href="class_p_i_vector.html">PIVector<char></a> vec;</div><div class="line">vec << <span class="charliteral">'1'</span> << <span class="charliteral">'2'</span> << <span class="charliteral">'3'</span> << <span class="charliteral">'4'</span> << <span class="charliteral">'5'</span>;</div><div class="line">vec.<a class="code" href="class_p_i_vector.html#a0e43a8466d800cd8ac31f91dc8f6e6a3">remove</a>(2, 2);</div><div class="line"><a class="code" href="picontainers_8h.html#a807914d038e5a193d2e36b4b82b6df96">piForeachC</a> (<span class="keywordtype">char</span> i, vec)</div><div class="line"> cout << i << <span class="stringliteral">", "</span>;</div><div class="line"><span class="comment">// 1, 2, 5, </span></div></div><!-- fragment --><dl class="section see"><dt>See also</dt><dd><em><a class="el" href="class_p_i_vector.html#a016a1c78ec7270e6edccc81d7c8075ef" title="Remove no more than one element equal "v" and return reference to vector. ">removeOne()</a></em>, <em><a class="el" href="class_p_i_vector.html#a5c8b3839e69249aa672e76017af2be1f" title="Remove all elements equal "v" and return reference to vector. ">removeAll()</a></em> </dd></dl>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="ad05af044be450c64a351df48a96fea97"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#ad05af044be450c64a351df48a96fea97">◆ </a></span>sort()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<div class="memtemplate">
|
|
template<typename T> </div>
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname"><a class="el" href="class_p_i_vector.html">PIVector</a>< T > & <a class="el" href="class_p_i_vector.html">PIVector</a>< T >::sort </td>
|
|
<td>(</td>
|
|
<td class="paramtype">CompareFunc </td>
|
|
<td class="paramname"><em>compare</em> = <code><a class="el" href="class_p_i_vector.html#a3e72f0fc2245a55a29b1a1c3ce0d36e2">compare_func</a></code></td><td>)</td>
|
|
<td></td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Sort vector using quick sort algorithm and standard compare function. </p>
|
|
<p>Example: </p><div class="fragment"><div class="line"><a class="code" href="class_p_i_vector.html">PIVector<int></a> vec;</div><div class="line">vec << 3 << 2 << 5 << 1 << 4;</div><div class="line">vec.<a class="code" href="class_p_i_vector.html#ad05af044be450c64a351df48a96fea97">sort</a>();</div><div class="line"><a class="code" href="picontainers_8h.html#a807914d038e5a193d2e36b4b82b6df96">piForeachC</a> (<span class="keywordtype">int</span> & i, vec)</div><div class="line"> cout << i << <span class="stringliteral">", "</span>;</div><div class="line"><span class="comment">// 1, 2, 3, 4, 5, </span></div></div><!-- fragment --><p>With custom compare function: </p><div class="fragment"><div class="line"><span class="keyword">static</span> <span class="keywordtype">int</span> mycomp(<span class="keyword">const</span> <span class="keywordtype">int</span> * v0, <span class="keyword">const</span> <span class="keywordtype">int</span> * v1) {</div><div class="line"> <span class="keywordflow">if</span> (*v0 == *v1) <span class="keywordflow">return</span> 0;</div><div class="line"> <span class="keywordflow">return</span> *v0 < *v1 ? 1 : -1;</div><div class="line">}</div><div class="line"><a class="code" href="class_p_i_vector.html">PIVector<int></a> vec;</div><div class="line">vec << 3 << 2 << 5 << 1 << 4;</div><div class="line">vec.<a class="code" href="class_p_i_vector.html#ad05af044be450c64a351df48a96fea97">sort</a>(mycomp);</div><div class="line"><a class="code" href="picontainers_8h.html#a807914d038e5a193d2e36b4b82b6df96">piForeachC</a> (<span class="keywordtype">int</span> & i, vec)</div><div class="line"> cout << i << <span class="stringliteral">", "</span>;</div><div class="line"><span class="comment">// 5, 4, 3, 2, 1, </span></div></div><!-- fragment -->
|
|
</div>
|
|
</div>
|
|
<a id="a016a1c78ec7270e6edccc81d7c8075ef"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a016a1c78ec7270e6edccc81d7c8075ef">◆ </a></span>removeOne()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<div class="memtemplate">
|
|
template<typename T> </div>
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname"><a class="el" href="class_p_i_vector.html">PIVector</a>< T > & <a class="el" href="class_p_i_vector.html">PIVector</a>< T >::removeOne </td>
|
|
<td>(</td>
|
|
<td class="paramtype">const T & </td>
|
|
<td class="paramname"><em>v</em></td><td>)</td>
|
|
<td></td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Remove no more than one element equal "v" and return reference to vector. </p>
|
|
<p>Example: </p><div class="fragment"><div class="line"><a class="code" href="class_p_i_vector.html">PIVector<char></a> vec;</div><div class="line">vec << <span class="charliteral">'1'</span> << <span class="charliteral">'2'</span> << <span class="charliteral">'3'</span> << <span class="charliteral">'2'</span> << <span class="charliteral">'1'</span>;</div><div class="line">vec.<a class="code" href="class_p_i_vector.html#a016a1c78ec7270e6edccc81d7c8075ef">removeOne</a>(<span class="charliteral">'2'</span>);</div><div class="line"><a class="code" href="picontainers_8h.html#a807914d038e5a193d2e36b4b82b6df96">piForeachC</a> (<span class="keywordtype">char</span> i, vec)</div><div class="line"> cout << i << <span class="stringliteral">", "</span>;</div><div class="line"><span class="comment">// 1, 3, 2, 1, </span></div></div><!-- fragment --><dl class="section see"><dt>See also</dt><dd><em><a class="el" href="class_p_i_vector.html#a0e43a8466d800cd8ac31f91dc8f6e6a3" title="Remove one element by index "index" and return reference to vector. ">remove()</a></em>, <em><a class="el" href="class_p_i_vector.html#a5c8b3839e69249aa672e76017af2be1f" title="Remove all elements equal "v" and return reference to vector. ">removeAll()</a></em> </dd></dl>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a5c8b3839e69249aa672e76017af2be1f"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a5c8b3839e69249aa672e76017af2be1f">◆ </a></span>removeAll()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<div class="memtemplate">
|
|
template<typename T> </div>
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname"><a class="el" href="class_p_i_vector.html">PIVector</a>< T > & <a class="el" href="class_p_i_vector.html">PIVector</a>< T >::removeAll </td>
|
|
<td>(</td>
|
|
<td class="paramtype">const T & </td>
|
|
<td class="paramname"><em>v</em></td><td>)</td>
|
|
<td></td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Remove all elements equal "v" and return reference to vector. </p>
|
|
<p>Example: </p><div class="fragment"><div class="line"><a class="code" href="class_p_i_vector.html">PIVector<char></a> vec;</div><div class="line">vec << <span class="charliteral">'1'</span> << <span class="charliteral">'2'</span> << <span class="charliteral">'3'</span> << <span class="charliteral">'2'</span> << <span class="charliteral">'1'</span>;</div><div class="line">vec.<a class="code" href="class_p_i_vector.html#a5c8b3839e69249aa672e76017af2be1f">removeAll</a>(<span class="charliteral">'2'</span>);</div><div class="line"><a class="code" href="picontainers_8h.html#a807914d038e5a193d2e36b4b82b6df96">piForeachC</a> (<span class="keywordtype">char</span> i, vec)</div><div class="line"> cout << i << <span class="stringliteral">", "</span>;</div><div class="line"><span class="comment">// 1, 3, 1, </span></div></div><!-- fragment --><dl class="section see"><dt>See also</dt><dd><em><a class="el" href="class_p_i_vector.html#a0e43a8466d800cd8ac31f91dc8f6e6a3" title="Remove one element by index "index" and return reference to vector. ">remove()</a></em>, <em><a class="el" href="class_p_i_vector.html#a016a1c78ec7270e6edccc81d7c8075ef" title="Remove no more than one element equal "v" and return reference to vector. ">removeOne()</a></em> </dd></dl>
|
|
|
|
</div>
|
|
</div>
|
|
</div><!-- contents -->
|
|
</div><!-- doc-content -->
|
|
<!-- start footer part -->
|
|
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
|
|
<ul>
|
|
<li class="navelem"><a class="el" href="class_p_i_vector.html">PIVector</a></li>
|
|
<li class="footer">Generated on Fri Dec 8 2017 16:36:05 for PIP by
|
|
<a href="http://www.doxygen.org/index.html">
|
|
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
|
|
</ul>
|
|
</div>
|
|
</body>
|
|
</html>
|