проблемма с двумерным массивом (Массив int`ов с строковыми )

Ответить

Код подтверждения
Введите код в точности так, как вы его видите. Регистр символов не имеет значения.

BBCode ВКЛЮЧЁН
[img] ВКЛЮЧЁН
[url] ВКЛЮЧЁН
Смайлики ОТКЛЮЧЕНЫ

Обзор темы
   

Развернуть Обзор темы: проблемма с двумерным массивом (Массив int`ов с строковыми )

Absurd » 07 июн 2005, 16:12

Код: Выделить всё

template<class T>
class CArrayHolder {
  CArray<T,T&> m_array;
public:
  CArrayHolder(const CArrayHolder<T>& ah) {
    m_array.Copy(ah.m_array);
  }

  CArrayHolder(const CArray<T,T&>& array) {
    m_array.Copy(array);
  }

  CArrayHolder<T>& operator=(const CArrayHolder<T>& ah) {
    m_array.Copy(ah.m_array);
    return *this;
  }

  CArrayHolder<T>& operator=(const CArray<T,T&>& array) {
    m_array.Copy(array);
    return *this;
  }
  
  CArray<T,T&>& get(){
    return m_array;
  }
  
   const CArray<T,T&>& get() const {
    return m_array;
  }
}
CMap<CString,CString&,CArrayHolder<int>,CArrayHolder<int>&> tbl

Drizo » 07 июн 2005, 14:44

Спасибо огромное за внимание, но всё раво НЕ работает. на этот раз я написал:

Код: Выделить всё

CArray <int,int&> cr;	
CMap<CString,CString&,CArray<int,int&>,CArray<int,int&>&> tbl;
а в ответ:
  • 'operator =' function is unavailable in 'CArray<TYPE,ARG_TYPE>'
  • while compiling class-template member function 'void CMap<KEY,ARG_KEY,VALUE,ARG_VALUE>::SetAt(ARG_KEY,ARG_VALUE)'
и ещё много в таком же духе ссылаясь на код в afxtempl.h[/code]

Absurd » 07 июн 2005, 12:35

CMap<CString,CString&,CArray<int,int&>,CArray<int,int&>& > tbl;

проблемма с двумерным массивом (Массив int`ов с строковыми )

Drizo » 07 июн 2005, 11:58

уже 2 недели.
задачка (на с++, MFC) стоит такая: под каждым строковым индексом (который содержит числа, но не по порядку, мне строкам удобнее) будет находится массив int`ов (размер не постоянной, да и приложение будет большое, по этому ручками[динамически] ооочень накладно). Т.е. :

Код: Выделить всё

CArray <int,int> cr;	
CMap <CString,CString,cr,CArray> tbl;
Но в ответ:
  • 'DrFunc::cr' : is not a type name, static, or enumerator
  • 'cr' : undeclared identifier
  • 'CMap' : use of class template requires template argument list
Люди, подскажите ПЛЗ как мне быть. Может ещё какой способ есть (кроме динамики)

Заранее псибки Dizzy(Odessa). :o ops:

Вернуться к началу