Название: Списки инициализации, варнинг Отправлено: Torvald от Март 01, 2013, 22:11 Код: struct Point3d{ extended initializer lists only available with -std=c++0x or -std=gnu++0x [enabled by default] Вопрос: как от него избавиться? Название: Re: Списки инициализации, варнинг Отправлено: Old от Март 01, 2013, 22:15 Вопрос: как от него избавиться? Добавить к опциям компилятора -std=c++0x или не использовать списки инициализации, которые стали доступны в последнем стандарте.Название: Re: Списки инициализации, варнинг Отправлено: Igors от Март 02, 2013, 11:36 Проще и лучше добавить метод
Код
Название: Re: Списки инициализации, варнинг Отправлено: GreatSnake от Март 02, 2013, 12:55 Проще и лучше добавить метод Код
Наверное, проще всё-таки будет так: Код
Название: Re: Списки инициализации, варнинг Отправлено: Old от Март 02, 2013, 13:13 Наверное, проще всё-таки будет так: Хотим же просто (в смысле легко) устанавливать значения всех полей объекта в нужные значения (не обязательно нулевые).Название: Re: Списки инициализации, варнинг Отправлено: Igors от Март 02, 2013, 14:21 Наверное, проще всё-таки будет так: Для данного конкретного класса это спорно. Напр возможна такая ситуевинаКод
Код Что хорошо в UI - не всегда хорошо для расчетов :) Название: Re: Списки инициализации, варнинг Отправлено: Torvald от Март 03, 2013, 15:01 Код
Всем спасибо за ответы. А ситуация была такая: я не хотел писать конструкторы вида Point3d() : x( 0 ), y( 0 ), z( 0 ) для каждой структуры, мне понравилась возможность списков инициализации, просто смущал варнинг. Воспользовался советом добавить к опциям компилятора -std=c++0x. Название: Re: Списки инициализации, варнинг Отправлено: Igors от Март 03, 2013, 16:08 Код
А ситуация была такая: я не хотел писать конструкторы вида Point3d() : x( 0 ), y( 0 ), z( 0 ) для каждой структуры, мне понравилась возможность списков инициализации, просто смущал варнинг. Воспользовался советом добавить к опциям компилятора -std=c++0x. Такие маленькие классы на первый взгляд кажутся совсем простыми. Однако с ростом проекта все становится не так очевидно. Напр неоднократно видел жаркие споры по поводу "а верно ли называть это "point"? :)Название: Re: Списки инициализации, варнинг Отправлено: Torvald от Март 06, 2013, 10:45 Код
А ситуация была такая: я не хотел писать конструкторы вида Point3d() : x( 0 ), y( 0 ), z( 0 ) для каждой структуры, мне понравилась возможность списков инициализации, просто смущал варнинг. Воспользовался советом добавить к опциям компилятора -std=c++0x. Такие маленькие классы на первый взгляд кажутся совсем простыми. Однако с ростом проекта все становится не так очевидно. Напр неоднократно видел жаркие споры по поводу "а верно ли называть это "point"? :)Я обычно оставляю конструктор без параметров. А на счет Point вы правы, часто нужно бывает воспользоваться тройкой x, y, z не как точкой в пространстве. Но это мой проект, в нем разработчик только я, и мне так удобнее :) |