Вниз  C / C++
- 21.05.2015 / 20:55
Naik
  Пользователь

Naik 
Сейчас: Offline
Freddy, пробовал,

qt_creator/Pet/main.cpp:24: error: invalid initialization of reference of type 'std::string& {aka std::basic_string<char>&}' from expression of type 'const string {aka const std::basic_string<char>}'
          return mName;
           ^

похоже требует поле сделать константой, но это не очень подходит
- 21.05.2015 / 20:56
Naik
  Пользователь

Naik 
Сейчас: Offline
Цитата aNNiMON:
Naik, а ты уверен, что p.getName, а не p->getName()? Как вообще поля и функции выглядят? Почему оно говорит, что-то про статический Pet::getName?

короче вот код http://pastebin.com/6x7ei05e
- 21.05.2015 / 21:29
Freddy
  Пользователь

Freddy 
Сейчас: Offline
Naik, вот полный исходник, mName у меня не является константной:
  1. #include <string>
  2. #include <time.h>
  3. #include <iostream>
  4.  
  5. using namespace std;
  6.  
  7. class Pet {
  8.     public:
  9.         Pet(const Pet& p) {
  10.             mBirthTime = time(NULL);
  11.             mName = p.getName() + " child";
  12.             cout << "Pet copy constructor" << endl;
  13.         }
  14.         const string& getName() const {return mName;}
  15.     private:
  16.         string mName;
  17.         time_t mBirthTime;
  18. };
  19.  
  20. int main() {
  21.     return 0;
  22. }


Изменено Freddy (21.05 / 21:32) (всего 1 раз)
- 3.06.2015 / 22:35
Naik
  Пользователь

Naik 
Сейчас: Offline
Нужно создать игру в Qt. Там все на холсте рисуется, или есть какие то классы уже? Спрайт, тайл, анимация. И как цикл игровой сделать? Всё на событиях?

Изменено Naik (3.06 / 22:37) (всего 1 раз)
- 5.06.2015 / 22:49
Naik
  Пользователь

Naik 
Сейчас: Offline
Писал многофайловый проект. И получалось на каждый .cpp было по одному .h Быстро накопилось более 10 файлов.. Это же неудобно, что будет, если я создам 20 классов? 40 файлов :gg: В одном месте все писать тоже не дело, можно инклюдить просто файлы, но потом начинаешь путать что где реализовано и где что инклудится. Неудобно как-то
- 5.06.2015 / 23:26
aNNiMON
  Супервизор

aNNiMON 
Сейчас: Offline
Naik, Разнеси заголовки в одну папку, реализацию в другую. А так, да, это одна из "фич" C++, привыкай)
__________________
 let live
- 6.06.2015 / 01:26
Ксакеп
  Модератор форума

Ксакеп 
Сейчас: Offline
Naik, сложность O(n), всё норм.

Ещё можешь не создавать cpp, особенно при определениях классов.
- 6.07.2015 / 17:21
fokoko12334
  Пользователь

fokoko12334 
Бросил этот язык, так как очень сложный.
- 6.07.2015 / 18:53
Ксакеп
  Модератор форума

Ксакеп 
Сейчас: Offline
fokoko12334, и в чем была сложность?
- 7.07.2015 / 05:48
StarTek
  Пользователь

StarTek 
Сейчас: Offline
Самое сложное здесь - отладка. К примеру делаешь свой класс. Если не будешь соблюдать правило трёх единств (в c++11 - 5) - segfault. Это для новичков которые не знают. Да и много тут подводных камней. Особенно не сразу поймёшь ошибку компиляции. Возможно это gcc, clang не пробовал.
Наверх  Всего сообщений: 2777
Фильтровать сообщения
Поиск по теме
Файлы топика (111)