Advertisement
Ejejejejejjr

Для вопроса

Jan 1st, 2021
305
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.40 KB | None | 0 0
  1. /*
  2.  
  3. member initializer 'DataType' does not name a non-static data member or base class
  4.         TypeInfo(PT1 Pvalue1, PT2 Pvalue2) : DataType(Pvalue1, Pvalue2)
  5.  
  6. use of undeclared identifier 'value1'
  7.                 std::cout << "Тип данных значения " << value1 << " - " << typeid(value1).name()
  8.  
  9. */
  10.  
  11.  
  12. #include <iostream>
  13. #include <string>
  14. #include <fstream>
  15.  
  16.  
  17.  
  18. template<typename T1, typename T2>
  19. class DataType
  20. {
  21.    
  22. public:
  23.     DataType(T1 value1, T2 value2)
  24.     {
  25.         this->value1 = value1;
  26.         this->value2 = value2;
  27.     }
  28.    
  29.     void DataTypeSize()
  30.     {
  31.         std::cout << "Значение " << value1 << " занимает " << sizeof(value1) << " байта" << std::endl;
  32.         std::cout << "Значение " << value2 << " занимает " << sizeof(value2) << " байта" << std::endl;
  33.     }
  34.    
  35.    
  36. protected:
  37.     T1 value1;
  38.     T2 value2;
  39.    
  40. };
  41.  
  42.  
  43. template<typename PT1, typename PT2>
  44. class TypeInfo : public DataType<PT1, PT2>
  45. {
  46. public:
  47.    
  48.     TypeInfo(PT1 Pvalue1, PT2 Pvalue2) : DataType(Pvalue1, Pvalue2)
  49.     {
  50.        
  51.     }
  52.    
  53.     void ShowTypeName()
  54.     {
  55.         std::cout << "Тип данных значения " << value1 << " - " << typeid(value1).name()
  56.         std::cout << "Тип данных значения " << value2 << " - " << typeid(value2).name()
  57.     }
  58.    
  59. };
  60.  
  61.  
  62.  
  63. int main(int argc, char *argv[])
  64. {
  65.     setlocale(LC_ALL, "Rus");
  66.     srand(time(NULL));
  67.    
  68.  
  69.     TypeInfo<int, std::string> dt(5.99, "пять");
  70.    
  71.     dt.DataTypeSize();
  72.     dt.ShowTypeName();
  73.    
  74.     return 0;
  75. }
  76.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement