A<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ru">
		<id>http://www.cppe.ru/index.php?action=history&amp;feed=atom&amp;title=C%2B%2B_Tutorial%2FPointer%2Fobject_pointer</id>
		<title>C++ Tutorial/Pointer/object pointer - История изменений</title>
		<link rel="self" type="application/atom+xml" href="http://www.cppe.ru/index.php?action=history&amp;feed=atom&amp;title=C%2B%2B_Tutorial%2FPointer%2Fobject_pointer"/>
		<link rel="alternate" type="text/html" href="http://www.cppe.ru/index.php?title=C%2B%2B_Tutorial/Pointer/object_pointer&amp;action=history"/>
		<updated>2026-04-18T01:15:38Z</updated>
		<subtitle>История изменений этой страницы в вики</subtitle>
		<generator>MediaWiki 1.30.0</generator>

	<entry>
		<id>http://www.cppe.ru/index.php?title=C%2B%2B_Tutorial/Pointer/object_pointer&amp;diff=2623&amp;oldid=prev</id>
		<title> в 14:21, 25 мая 2010</title>
		<link rel="alternate" type="text/html" href="http://www.cppe.ru/index.php?title=C%2B%2B_Tutorial/Pointer/object_pointer&amp;diff=2623&amp;oldid=prev"/>
				<updated>2010-05-25T14:21:17Z</updated>
		
		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;tr style=&quot;vertical-align: top;&quot; lang=&quot;ru&quot;&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;← Предыдущая&lt;/td&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;Версия 14:21, 25 мая 2010&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; style=&quot;text-align: center;&quot; lang=&quot;ru&quot;&gt;&lt;div class=&quot;mw-diff-empty&quot;&gt;(нет различий)&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</summary>
			</entry>

	<entry>
		<id>http://www.cppe.ru/index.php?title=C%2B%2B_Tutorial/Pointer/object_pointer&amp;diff=2624&amp;oldid=prev</id>
		<title>Admin: 1 версия:&amp;#32;Импорт контента...</title>
		<link rel="alternate" type="text/html" href="http://www.cppe.ru/index.php?title=C%2B%2B_Tutorial/Pointer/object_pointer&amp;diff=2624&amp;oldid=prev"/>
				<updated>2010-05-25T10:30:07Z</updated>
		
		<summary type="html">&lt;p&gt;1 версия: Импорт контента...&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Новая страница&lt;/b&gt;&lt;/p&gt;&lt;div&gt;==array of pointers to objects==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;cpp&amp;quot;&amp;gt;#include &amp;lt;iostream&amp;gt;  &lt;br /&gt;
  using namespace std;  &lt;br /&gt;
  class person{  &lt;br /&gt;
     protected:  &lt;br /&gt;
        char name[40]; &lt;br /&gt;
     public:  &lt;br /&gt;
        void setName(){  &lt;br /&gt;
           cout &amp;lt;&amp;lt; &amp;quot;Enter name: &amp;quot;;  &lt;br /&gt;
           cin &amp;gt;&amp;gt; name;  &lt;br /&gt;
        }  &lt;br /&gt;
        void printName()&lt;br /&gt;
        {  &lt;br /&gt;
           cout &amp;lt;&amp;lt; &amp;quot;\n   Name is: &amp;quot; &amp;lt;&amp;lt; name;  &lt;br /&gt;
        }  &lt;br /&gt;
    };  &lt;br /&gt;
  int main()  &lt;br /&gt;
    {  &lt;br /&gt;
     person* persPtr[100];&lt;br /&gt;
     int n = 0;           &lt;br /&gt;
     char choice;  &lt;br /&gt;
    &lt;br /&gt;
     do{  &lt;br /&gt;
        persPtr[n] = new person;         &lt;br /&gt;
        persPtr[n]-&amp;gt;setName();           &lt;br /&gt;
        n++;                             &lt;br /&gt;
        cout &amp;lt;&amp;lt; &amp;quot;Enter another (y/n)? &amp;quot;; &lt;br /&gt;
        cin &amp;gt;&amp;gt; choice;                   &lt;br /&gt;
     }while( choice==&amp;quot;y&amp;quot; );                &lt;br /&gt;
    &lt;br /&gt;
     for(int j=0; j&amp;lt;n; j++){&lt;br /&gt;
        cout &amp;lt;&amp;lt; &amp;quot;\nPerson number &amp;quot; &amp;lt;&amp;lt; j+1;  &lt;br /&gt;
        persPtr[j]-&amp;gt;printName();  &lt;br /&gt;
     }  &lt;br /&gt;
     cout &amp;lt;&amp;lt; endl;  &lt;br /&gt;
     return 0;  &lt;br /&gt;
    }&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==assign the address of a public member of an object to a pointer and then access that member by using the pointer==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;cpp&amp;quot;&amp;gt;#include &amp;lt;iostream&amp;gt;&lt;br /&gt;
using namespace std;&lt;br /&gt;
   &lt;br /&gt;
class cl {&lt;br /&gt;
public:&lt;br /&gt;
  int i;&lt;br /&gt;
  cl(int j) { i=j; }&lt;br /&gt;
};&lt;br /&gt;
   &lt;br /&gt;
int main()&lt;br /&gt;
{&lt;br /&gt;
  cl ob(1);&lt;br /&gt;
  int *p;&lt;br /&gt;
   &lt;br /&gt;
  p = &amp;amp;ob.i; // get address of ob.i&lt;br /&gt;
   &lt;br /&gt;
  cout &amp;lt;&amp;lt; *p; // access ob.i via p&lt;br /&gt;
   &lt;br /&gt;
  return 0;&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==dereferencing the pointer returned by new==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;cpp&amp;quot;&amp;gt;#include &amp;lt;iostream&amp;gt;  &lt;br /&gt;
  using namespace std;  &lt;br /&gt;
  class Distance                    &lt;br /&gt;
    {  &lt;br /&gt;
     private:  &lt;br /&gt;
        int feet;  &lt;br /&gt;
        float inches;  &lt;br /&gt;
     public:  &lt;br /&gt;
        void getdist() {  &lt;br /&gt;
           cout &amp;lt;&amp;lt; &amp;quot;\nEnter feet: &amp;quot;;  &lt;br /&gt;
           cin &amp;gt;&amp;gt; feet;  &lt;br /&gt;
           cout &amp;lt;&amp;lt; &amp;quot;Enter inches: &amp;quot;;  &lt;br /&gt;
           cin &amp;gt;&amp;gt; inches;  &lt;br /&gt;
        }  &lt;br /&gt;
        void showdist(){&lt;br /&gt;
           cout &amp;lt;&amp;lt; feet &amp;lt;&amp;lt; &amp;quot;\&amp;quot;-&amp;quot; &amp;lt;&amp;lt; inches &amp;lt;&amp;lt; &amp;quot;\&amp;quot;&amp;quot;; &lt;br /&gt;
        }  &lt;br /&gt;
    };  &lt;br /&gt;
  int main(){  &lt;br /&gt;
     Distance&amp;amp; dist = *(new Distance);  &lt;br /&gt;
                                        &lt;br /&gt;
     dist.getdist();                    &lt;br /&gt;
     dist.showdist();                   &lt;br /&gt;
     cout &amp;lt;&amp;lt; endl;  &lt;br /&gt;
     return 0;  &lt;br /&gt;
    }&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Pointers to Objects==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;cpp&amp;quot;&amp;gt;#include &amp;lt;iostream&amp;gt;&lt;br /&gt;
using namespace std;&lt;br /&gt;
   &lt;br /&gt;
class cl {&lt;br /&gt;
  int i;&lt;br /&gt;
public:&lt;br /&gt;
  cl(int j) { i=j; }&lt;br /&gt;
  int get_i() { return i; }&lt;br /&gt;
};&lt;br /&gt;
   &lt;br /&gt;
int main()&lt;br /&gt;
{&lt;br /&gt;
  cl ob(88), *p;&lt;br /&gt;
   &lt;br /&gt;
  p = &amp;amp;ob; // get address of ob&lt;br /&gt;
   &lt;br /&gt;
  cout &amp;lt;&amp;lt; p-&amp;gt;get_i(); // use -&amp;gt; to call get_i()&lt;br /&gt;
   &lt;br /&gt;
  return 0;&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==uses a pointer to access all three elements of array ob after being assigned ob&amp;quot;s starting address==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;cpp&amp;quot;&amp;gt;#include &amp;lt;iostream&amp;gt;&lt;br /&gt;
using namespace std;&lt;br /&gt;
   &lt;br /&gt;
class cl {&lt;br /&gt;
  int i;&lt;br /&gt;
public:&lt;br /&gt;
  cl() { i=0; }&lt;br /&gt;
  cl(int j) { i=j; }&lt;br /&gt;
  int get_i() { return i; }&lt;br /&gt;
};&lt;br /&gt;
   &lt;br /&gt;
int main()&lt;br /&gt;
{&lt;br /&gt;
  cl ob[3] = {1, 2, 3};&lt;br /&gt;
  cl *p;&lt;br /&gt;
  int i;&lt;br /&gt;
   &lt;br /&gt;
  p = ob; // get start of array&lt;br /&gt;
  for(i=0; i&amp;lt;3; i++) {&lt;br /&gt;
    cout &amp;lt;&amp;lt; p-&amp;gt;get_i() &amp;lt;&amp;lt; &amp;quot;\n&amp;quot;;&lt;br /&gt;
    p++; // point to next object&lt;br /&gt;
  }&lt;br /&gt;
   &lt;br /&gt;
  return 0;&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;/div&gt;</summary>
		<author><name>Admin</name></author>	</entry>

	</feed>