Guest User

Untitled

a guest
Jun 19th, 2018
96
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.39 KB | None | 0 0
  1. struct Rabbit {
  2. int X;
  3. int Y;
  4. bool death = true;
  5. bool finder = true;
  6. int counter = 0;
  7. };
  8.  
  9. typedef struct
  10. {
  11. int ID; // переменная структуры
  12. } Str_Message; // создаём структуру
  13.  
  14. namespace Ui {
  15. class MainWindow;
  16. }
  17.  
  18. class MainWindow : public QMainWindow
  19. {
  20. Q_OBJECT
  21.  
  22. public:
  23. explicit MainWindow(QWidget *parent = 0);
  24. ~MainWindow();
  25.  
  26. QVector <Str_Message> S_M; // задаём вектор в который будем складывать созданные структуры
  27.  
  28. Str_Message struc_mess; //Чтобы поместить в структуру в вектор, надо что бы структура была объявлена. объявляем структуру.
  29.  
  30. #include "mainwindow.h"
  31. #include "ui_mainwindow.h"
  32.  
  33. MainWindow::MainWindow(QWidget *parent) :
  34. QMainWindow(parent),
  35. ui(new Ui::MainWindow)
  36. {
  37. ui->setupUi(this);
  38.  
  39. struc_mess.ID = 1; // заполняю структуру
  40. S_M.append(struc_mess); //Поместили одну структуру.
  41. struc_mess.ID = 2; // заполняю структуру
  42. S_M.append(struc_mess); //Поместили еще одну структуру
  43.  
  44. qDebug() << "S_M.at(0).ID :" << S_M.at(0).ID; // "по точечно" проверяем что там лежит
  45. qDebug() << "S_M.at(1).ID :" << S_M.at(1).ID;
  46.  
  47. for (QVector<Str_Message>::iterator it=S_M.begin();it!=S_M.end();it++)
  48. qDebug() << "ID : " << it->ID; // выводим то что лежит в структурах
  49. }
  50.  
  51. #include <iostream>
  52. #include <vector>
  53.  
  54. struct SomeStruct {
  55. int num;
  56. std::string str;
  57. };
  58.  
  59. int main(void) {
  60. /* Можно создать вектор и сразу инициализировать его. */
  61. std::vector<struct SomeStruct> vec = {
  62. {10, "first"},
  63. {20, "second"}
  64. };
  65.  
  66. /* Первый способ добавления структуры в вектор. */
  67. vec.push_back({30, "third"});
  68.  
  69. /* Второй способ. */
  70. vec.push_back(SomeStruct());
  71. vec.back().num = 40;
  72. vec.back().str = "fourth";
  73.  
  74. /* Третий способ. */
  75. struct SomeStruct const temp = {50, "fifth"};
  76. vec.push_back(temp);
  77.  
  78. /* Выводим все элементы вектора. */
  79. for (size_t i = 0; i < vec.size(); i++)
  80. std::cout << vec[i].num << " " + vec[i].str << std::endl;
  81. }
Add Comment
Please, Sign In to add comment