home *** CD-ROM | disk | FTP | other *** search
/ NetNews Offline 2 / NetNews Offline Volume 2.iso / news / comp / lang / c++-part2 / 17991 < prev    next >
Encoding:
Text File  |  1996-08-05  |  1.7 KB  |  77 lines

  1. Path: nntp-trd.UNINETT.no!usenet
  2. From: Paul Kenneth Egell-johnsen <paulken4@afrodite.kih.no>
  3. Newsgroups: comp.lang.c++
  4. Subject: templates, arguments and pointers
  5. Date: Thu, 18 Apr 1996 15:08:30 +0200
  6. Organization: UNINETT news service    
  7. Message-ID: <31763ECE.352C@afrodite.kih.no>
  8. NNTP-Posting-Host: afrodite.kih.no
  9. Mime-Version: 1.0
  10. Content-Type: text/plain; charset=us-ascii
  11. Content-Transfer-Encoding: 7bit
  12. X-Mailer: Mozilla 2.01 (X11; I; HP-UX A.09.05 9000/720)
  13.  
  14. Here is a problem we have:
  15.  
  16. template <class D>
  17.     class Matrix : public Grid<D>
  18.     {
  19.     public:
  20.         Matrix();
  21.         Matrix(size_t rows, size_t cols);
  22.         etc.
  23.     }
  24.  
  25. class tobject
  26. {
  27. public:
  28.     tobject();
  29.     ~tobject();
  30. private:
  31.     Matrix<int> *pointer;
  32. }
  33.  
  34. tobject::tobject()
  35. {
  36.     int i;
  37.     pointer = new Matrix<int>(23,23); // is this construct valid?
  38. }
  39.  
  40. My problem is in the constructor of tobject. The Matrix class
  41. (are from a book, and all examples pertaining to it, just
  42. instantiates the objects with those two arguments always, never
  43. dealing with pointers to the Matrix class) demands (as it is
  44. now) the two arguments, saying how wide and how high it should
  45. be.
  46.  
  47. The standard way to fill in a Matrix object is this:
  48.  
  49. Matrix<int> A(2,2);
  50.  
  51. A(0,0) = 1;
  52. A(0,1) = 2;
  53.  
  54. How would this work with pointers:
  55.  
  56. *this->pointer(0,0) = 1;
  57. *this->pointer(0,1) = 2;
  58.  
  59. For those of you who would know whihc book we used, it is:
  60.  
  61. C++ Templates and Tools,
  62. Scott Robert Ladd,
  63. M&T Books
  64.  
  65. Infact we just dropped the Matrix class in our implementation,
  66. but we think that the problem is an interesting one.
  67.  
  68. Of course we could put in a set function...but now that we have
  69. this problem, lets see how it's solved.
  70.  
  71. Any help would be very appriciated.
  72.  
  73. Paul K Egell-Johnsen,
  74.  
  75. mailto:paulken4@afrodite.kih.no
  76. http://afrodite.kih.no:8001/studenter/paulken4/frames/
  77.