📄 blitz_7.html
字号:
<HTML><!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><!-- Created on October, 14 2005 by texi2html 1.64 --><!-- Written by: Lionel Cons <Lionel.Cons@cern.ch> (original author) Karl Berry <karl@freefriends.org> Olaf Bachmann <obachman@mathematik.uni-kl.de> and many others.Maintained by: Olaf Bachmann <obachman@mathematik.uni-kl.de>Send bugs and suggestions to <texi2html@mathematik.uni-kl.de> --><HEAD><TITLE>Blitz++: TinyVector</TITLE><META NAME="description" CONTENT="Blitz++: TinyVector"><META NAME="keywords" CONTENT="Blitz++: TinyVector"><META NAME="resource-type" CONTENT="document"><META NAME="distribution" CONTENT="global"><META NAME="Generator" CONTENT="texi2html 1.64"></HEAD><BODY LANG="" BGCOLOR="#FFFFFF" TEXT="#000000" LINK="#0000FF" VLINK="#800080" ALINK="#FF0000"><A NAME="SEC131"></A><TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0><TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="blitz_6.html#SEC130"> < </A>]</TD><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="blitz_7.html#SEC132"> > </A>]</TD><TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="blitz_8.html#SEC140"> << </A>]</TD><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="blitz.html#SEC_Top"> Up </A>]</TD><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="blitz_8.html#SEC140"> >> </A>]</TD><TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="blitz.html#SEC_Top">Top</A>]</TD><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="blitz_toc.html#SEC_Contents">Contents</A>]</TD><TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="blitz_abt.html#SEC_About"> ? </A>]</TD></TR></TABLE><H1> 7. TinyVector </H1><!--docid::SEC131::--><P><A NAME="IDX332"></A><A NAME="IDX333"></A></P><P>The <CODE>TinyVector</CODE> class provides a small, lightweight vector objectwhose size is known at compile time. It is included via the header<CODE><blitz/tinyvec.h></CODE>. </P><P>Note that <CODE>TinyVector</CODE> lives in the <CODE>blitz</CODE> namespace, so you willneed to refer to it as <CODE>blitz::TinyVector</CODE>, or use the directive<CODE>using namespace blitz;</CODE>.</P><P>The Blitz++ <CODE>Array</CODE> object uses <CODE>TinyVector</CODE> internally, so if youinclude <CODE><blitz/array.h></CODE>, the <CODE>TinyVector</CODE> header is automaticallyincluded. However, to use <CODE>TinyVector</CODE> expressions, you willneed to include <CODE><blitz/tinyvec-et.h></CODE>.</P><P><HR SIZE="6"><A NAME="SEC132"></A><TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0><TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="blitz_7.html#SEC131"> < </A>]</TD><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="blitz_7.html#SEC133"> > </A>]</TD><TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="blitz_7.html#SEC131"> << </A>]</TD><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="blitz_7.html#SEC131"> Up </A>]</TD><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="blitz_8.html#SEC140"> >> </A>]</TD><TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="blitz.html#SEC_Top">Top</A>]</TD><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="blitz_toc.html#SEC_Contents">Contents</A>]</TD><TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="blitz_abt.html#SEC_About"> ? </A>]</TD></TR></TABLE><H2> 7.1 Template parameters and types </H2><!--docid::SEC132::--><P>The <CODE>TinyVector<T,N></CODE> class has two template parameters:</P><P><DL COMPACT><DT><CODE>T</CODE><DD>is the numeric type of the vector (float, double, int,<CODE>complex<float></CODE>, etc.;<P><DT><CODE>N</CODE><DD>is the number of elements in the vector.</DL><P>Inside the <CODE>TinyVector</CODE> class, these types are declared:</P><P><DL COMPACT><DT><CODE>T_numtype</CODE><DD>is the numeric type stored in the vector (the template parameter <CODE>T</CODE>)<P><DT><CODE>T_vector</CODE><DD>is the vector type <CODE>TinyVector<T,N></CODE>.<P><DT><CODE>iterator</CODE><DD>is an STL-style iterator.<P><DT><CODE>constIterator</CODE><DD>is an STL-style const iterator.</DL><P><HR SIZE="6"><A NAME="SEC133"></A><TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0><TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="blitz_7.html#SEC132"> < </A>]</TD><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="blitz_7.html#SEC134"> > </A>]</TD><TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="blitz_7.html#SEC134"> << </A>]</TD><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="blitz_7.html#SEC131"> Up </A>]</TD><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="blitz_8.html#SEC140"> >> </A>]</TD><TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="blitz.html#SEC_Top">Top</A>]</TD><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="blitz_toc.html#SEC_Contents">Contents</A>]</TD><TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="blitz_abt.html#SEC_About"> ? </A>]</TD></TR></TABLE><H2> 7.2 Constructors </H2><!--docid::SEC133::--><P><TABLE><tr><td> </td><td class=example><pre>TinyVector();</pre></td></tr></table>The elements of the vector are left uninitialized.</P><P><TABLE><tr><td> </td><td class=example><pre>TinyVector(const TinyVector<T,N>& x);</pre></td></tr></table>The elements of vector <CODE>x</CODE> are copied.</P><P><TABLE><tr><td> </td><td class=example><pre>TinyVector(T value);</pre></td></tr></table>All elements are initialized to <CODE>value</CODE>.</P><P><TABLE><tr><td> </td><td class=example><pre>TinyVector(T value1, T value2, ...);</pre></td></tr></table>The vector is initialized with the list of values given.These constructors are provided for up to N=11.</P><P><HR SIZE="6"><A NAME="SEC134"></A><TABLE CELLPADDING=1 CELLSPACING=1 BORDER=0><TR><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="blitz_7.html#SEC133"> < </A>]</TD><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="blitz_7.html#SEC135"> > </A>]</TD><TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="blitz_7.html#SEC135"> << </A>]</TD><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="blitz_7.html#SEC131"> Up </A>]</TD><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="blitz_8.html#SEC140"> >> </A>]</TD><TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT"> <TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="blitz.html#SEC_Top">Top</A>]</TD><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="blitz_toc.html#SEC_Contents">Contents</A>]</TD><TD VALIGN="MIDDLE" ALIGN="LEFT">[Index]</TD><TD VALIGN="MIDDLE" ALIGN="LEFT">[<A HREF="blitz_abt.html#SEC_About"> ? </A>]</TD></TR></TABLE><H2> 7.3 Member functions </H2><!--docid::SEC134::--><P><TABLE><tr><td> </td><td class=example><pre>TinyVector<T,N>::iterator begin();TinyVector<T,N>::const_iterator begin() const;</pre></td></tr></table>Returns an STL-style iterator for the vector, positionedat the beginning of the data.</P><P><TABLE><tr><td> </td><td class=example><pre>TinyVector<T,N>::iterator end();TinyVector<T,N>::const_iterator end() const;</pre></td></tr></table>Returns an STL-style iterator for the vector, positioned
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -