<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>http://wiki.zcubes.com/index.php?action=history&amp;feed=atom&amp;title=Yurttas%2FPL%2FOOL%2FCplusplus%2FF%2F02%2F06%2F06%2FA.cpp</id>
	<title>Yurttas/PL/OOL/Cplusplus/F/02/06/06/A.cpp - Revision history</title>
	<link rel="self" type="application/atom+xml" href="http://wiki.zcubes.com/index.php?action=history&amp;feed=atom&amp;title=Yurttas%2FPL%2FOOL%2FCplusplus%2FF%2F02%2F06%2F06%2FA.cpp"/>
	<link rel="alternate" type="text/html" href="http://wiki.zcubes.com/index.php?title=Yurttas/PL/OOL/Cplusplus/F/02/06/06/A.cpp&amp;action=history"/>
	<updated>2026-05-18T15:33:43Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.35.2</generator>
	<entry>
		<id>http://wiki.zcubes.com/index.php?title=Yurttas/PL/OOL/Cplusplus/F/02/06/06/A.cpp&amp;diff=153577&amp;oldid=prev</id>
		<title>MassBot1: Created page with &quot;&lt;syntaxhighlight lang=&quot;cpp&quot; line start=&quot;1&quot; enclose=&quot;div&quot;&gt;/*     Copyright(C) 2004     All Rights Reserved. Salih Yurttas, ZCubes, BitsOfCode Software Systems, Inc..       Perm...&quot;</title>
		<link rel="alternate" type="text/html" href="http://wiki.zcubes.com/index.php?title=Yurttas/PL/OOL/Cplusplus/F/02/06/06/A.cpp&amp;diff=153577&amp;oldid=prev"/>
		<updated>2013-11-07T03:46:30Z</updated>

		<summary type="html">&lt;p&gt;Created page with &amp;quot;&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot; line start=&amp;quot;1&amp;quot; enclose=&amp;quot;div&amp;quot;&amp;gt;/*     Copyright(C) 2004     All Rights Reserved. Salih Yurttas, ZCubes, BitsOfCode Software Systems, Inc..       Perm...&amp;quot;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;&amp;lt;syntaxhighlight lang=&amp;quot;cpp&amp;quot; line start=&amp;quot;1&amp;quot; enclose=&amp;quot;div&amp;quot;&amp;gt;/*&lt;br /&gt;
   Copyright(C) 2004&lt;br /&gt;
   All Rights Reserved. Salih Yurttas, ZCubes, BitsOfCode Software Systems, Inc..&lt;br /&gt;
&lt;br /&gt;
   Permission to use, copy, modify, and distribute this&lt;br /&gt;
   software and its documentation for EDUCATIONAL purposes&lt;br /&gt;
   and without fee is hereby granted provided that this&lt;br /&gt;
   copyright notice appears in all copies.&lt;br /&gt;
&lt;br /&gt;
   date   : January 1, 2004.&lt;br /&gt;
   author : Salih Yurttas.&lt;br /&gt;
&lt;br /&gt;
   A.cpp&lt;br /&gt;
*/&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
#include &amp;quot;A.h&amp;quot;&lt;br /&gt;
&lt;br /&gt;
A::&lt;br /&gt;
A() {&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
A::&lt;br /&gt;
A(const A&amp;amp; a) : data_a(a.data_a),&lt;br /&gt;
                data_b(a.data_b) {&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
A&amp;amp;&lt;br /&gt;
A::&lt;br /&gt;
operator=(const A&amp;amp; a) {&lt;br /&gt;
  if(this==&amp;amp;a) return *this;&lt;br /&gt;
&lt;br /&gt;
  data_a = a.data_a;&lt;br /&gt;
  data_b = a.data_b;&lt;br /&gt;
&lt;br /&gt;
  return *this;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
int&lt;br /&gt;
A::&lt;br /&gt;
get_first_data_a() const {&lt;br /&gt;
  return data_a.front();&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
int&lt;br /&gt;
A::&lt;br /&gt;
get_last_data_a() const {&lt;br /&gt;
  return data_a.back();&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
int&lt;br /&gt;
A::&lt;br /&gt;
get_any_data_a(const int i) const {&lt;br /&gt;
  if(i&amp;lt;0 || i&amp;gt;data_a.size())&lt;br /&gt;
    throw out_of_range(&amp;quot;index i is out_of_range&amp;quot;);&lt;br /&gt;
  else &lt;br /&gt;
    return data_a.at(i);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
int&lt;br /&gt;
A::&lt;br /&gt;
get_first_data_b() const {&lt;br /&gt;
  return data_b.front();&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
int&lt;br /&gt;
A::&lt;br /&gt;
get_last_data_b() const {&lt;br /&gt;
  return data_b.back();&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
int&lt;br /&gt;
A::&lt;br /&gt;
get_any_data_b(const int i) const {&lt;br /&gt;
  if(i&amp;lt;0 || i&amp;gt;data_b.size())&lt;br /&gt;
    throw out_of_range(&amp;quot;index i is out_of_range&amp;quot;);&lt;br /&gt;
  else &lt;br /&gt;
    return data_b.at(i);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
void&lt;br /&gt;
A::&lt;br /&gt;
set_first_data_a(const int a) {&lt;br /&gt;
  if(data_a.empty())&lt;br /&gt;
    data_a.push_back(a);&lt;br /&gt;
  else&lt;br /&gt;
    data_a.at(0) = a;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
void&lt;br /&gt;
A::&lt;br /&gt;
set_last_data_a(const int a) {&lt;br /&gt;
  if(data_a.empty())&lt;br /&gt;
    data_a.push_back(a);&lt;br /&gt;
  else&lt;br /&gt;
    data_a.at(data_a.size()-1) = a;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
void&lt;br /&gt;
A::&lt;br /&gt;
set_all_data_a(const int a) {&lt;br /&gt;
  if(data_a.empty())&lt;br /&gt;
    data_a.push_back(a);&lt;br /&gt;
  else {&lt;br /&gt;
    int n = data_a.size();&lt;br /&gt;
    for(int i=0; i&amp;lt;n; i++)&lt;br /&gt;
      data_a.at(i) = a;&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
void&lt;br /&gt;
A::&lt;br /&gt;
set_all_data_a(const vector&amp;lt;int&amp;gt;&amp;amp; a) {&lt;br /&gt;
  data_a = a;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
void&lt;br /&gt;
A::&lt;br /&gt;
set_any_data_a(const int i,&lt;br /&gt;
               const int a) {&lt;br /&gt;
  if(i&amp;lt;0 || i&amp;gt;data_a.size())&lt;br /&gt;
    throw out_of_range(&amp;quot;index i is out_of_range&amp;quot;);&lt;br /&gt;
  else &lt;br /&gt;
    data_a.at(i) = a;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
void&lt;br /&gt;
A::&lt;br /&gt;
set_first_data_b(const int a) {&lt;br /&gt;
  if(data_b.empty())&lt;br /&gt;
    data_b.push_back(a);&lt;br /&gt;
  else&lt;br /&gt;
    data_b.at(0) = a;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
void&lt;br /&gt;
A::&lt;br /&gt;
set_last_data_b(const int a) {&lt;br /&gt;
  if(data_b.empty())&lt;br /&gt;
    data_b.push_back(a);&lt;br /&gt;
  else&lt;br /&gt;
    data_b.at(data_b.size()-1) = a;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
void&lt;br /&gt;
A::&lt;br /&gt;
set_all_data_b(const int a) {&lt;br /&gt;
  if(data_b.empty())&lt;br /&gt;
    data_b.push_back(a);&lt;br /&gt;
  else {&lt;br /&gt;
    int n = data_b.size();&lt;br /&gt;
    for(int i=0; i&amp;lt;n; i++)&lt;br /&gt;
      data_b.at(i) = a;&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
void&lt;br /&gt;
A::&lt;br /&gt;
set_all_data_b(const vector&amp;lt;int&amp;gt;&amp;amp; a) {&lt;br /&gt;
  data_b = a;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
void&lt;br /&gt;
A::&lt;br /&gt;
set_any_data_b(const int i,&lt;br /&gt;
               const int a) {&lt;br /&gt;
  if(i&amp;lt;0 || i&amp;gt;data_b.size())&lt;br /&gt;
    throw out_of_range(&amp;quot;index i is out_of_range&amp;quot;);&lt;br /&gt;
  else &lt;br /&gt;
    data_b.at(i) = a;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
A&amp;amp;&lt;br /&gt;
A::&lt;br /&gt;
operator+=(const A&amp;amp; a) {&lt;br /&gt;
  int n = data_a.size();&lt;br /&gt;
  int m = data_b.size();&lt;br /&gt;
&lt;br /&gt;
  if(n!=data_a.size()||&lt;br /&gt;
     m!=data_b.size()) &lt;br /&gt;
    throw out_of_range(&amp;quot;mismatch sizes!&amp;quot;);&lt;br /&gt;
&lt;br /&gt;
  for(int i=0; i&amp;lt;n; i++)&lt;br /&gt;
    data_a.at(i) += a.data_a.at(i);&lt;br /&gt;
&lt;br /&gt;
  for(int i=0; i&amp;lt;m; i++)&lt;br /&gt;
    data_b.at(i) += a.data_b.at(i);&lt;br /&gt;
&lt;br /&gt;
  return *this;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
A&lt;br /&gt;
operator+(const A&amp;amp; a,&lt;br /&gt;
          const A&amp;amp; b) {&lt;br /&gt;
  int n = a.data_a.size();&lt;br /&gt;
  int m = a.data_b.size();&lt;br /&gt;
&lt;br /&gt;
  if(n!=b.data_a.size()||&lt;br /&gt;
     m!=b.data_b.size())&lt;br /&gt;
    throw out_of_range(&amp;quot;mismatch sizes!&amp;quot;);&lt;br /&gt;
&lt;br /&gt;
  A c(a);&lt;br /&gt;
&lt;br /&gt;
  for(int i=0; i&amp;lt;n; i++)&lt;br /&gt;
    c.data_a.at(i) = a.data_a.at(i) + b.data_a.at(i);&lt;br /&gt;
&lt;br /&gt;
  for(int i=0; i&amp;lt;m; i++)&lt;br /&gt;
    c.data_b.at(i) = a.data_b.at(i) + b.data_b.at(i);&lt;br /&gt;
&lt;br /&gt;
  return c;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
ostream&amp;amp;&lt;br /&gt;
operator&amp;lt;&amp;lt;(ostream&amp;amp; os,&lt;br /&gt;
           const A&amp;amp; a) {&lt;br /&gt;
  os &amp;lt;&amp;lt; endl;&lt;br /&gt;
  int n = a.data_a.size();&lt;br /&gt;
  for(int i=0; i&amp;lt;n; i++)&lt;br /&gt;
    os &amp;lt;&amp;lt; a.data_a.at(i) &amp;lt;&amp;lt; endl;&lt;br /&gt;
  os &amp;lt;&amp;lt; endl;&lt;br /&gt;
&lt;br /&gt;
  os &amp;lt;&amp;lt; endl;&lt;br /&gt;
  n = a.data_b.size();&lt;br /&gt;
  for(int i=0; i&amp;lt;n; i++)&lt;br /&gt;
    os &amp;lt;&amp;lt; a.data_b.at(i) &amp;lt;&amp;lt; endl;&lt;br /&gt;
  os &amp;lt;&amp;lt; endl;&lt;br /&gt;
&lt;br /&gt;
  return os;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;/div&gt;</summary>
		<author><name>MassBot1</name></author>
	</entry>
</feed>