Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
programina
1914 / 599 / 37
Регистрация: 23.10.2011
Сообщений: 4,468
Записей в блоге: 2
#1

Не работает создание обьекта - C++

01.03.2014, 14:57. Просмотров 362. Ответов 10
Метки нет (Все метки)

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
#include <stdio.h>
 
struct Point
{
    float x, y, z;
 
    Point(float _x, float _y, float _z)
    {
        x = _x;
        y = _y;
        z = _z;
    }
};
 
struct Vec2
{
    Point p1( 150.0f, 0.0f, 150.0f );
};
 
int main()
{
    Vec2 v;
 
    printf("%3.1f %3.1f %3.1f\n", v.p1.x, v.p1.y, v.p1.z);
}
Цитата Сообщение от MinGW
m.cpp:17:12: error: expected identifier before numeric constant
Цитата Сообщение от VC++
error C2059: синтаксическая ошибка: константа
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
01.03.2014, 14:57
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Не работает создание обьекта (C++):

Исключительный доступ обьекта к полям другого обьекта avr/c++ - C++
исключительный доступ обьекта к полям другого обьекта avr/c++ добрый день есть два обьекта Data &amp; Math - Data - элемент...

Сравнение обьекта - C++
Почему тут(39) написано if (this == &amp;rhs) а не if (this == rhs)? // Листинг 10.15. #include &lt;string&gt; #include...

Передвижение обьекта - C++
Нужно написать программу передвижения обьекта.Программа показывает поле XXXXX XIOOX XOOOX XOOOX XOOOX XOOOX XXXXX I-обьект ...

Дескриптор обьекта - C++
Работаю в Visual Studio,как на WinApi узнать дескриптор(HWND) объекта? Есть функция GetDlgItem,но используя такую запись HWND Static1...

Передача обьекта в функию - C++
Изучаю прогу в универе, понадобилось сделать обьект как аргумент функции.ООП ещё не изучали.Как это сделать можно?Я чисто интуитивно...

Передача в функцию обьекта - C++
Всем привет. В интернете ничего не нашел по этому поводу: Я делаю шашки и у меня есть класс USER и два производных COMPUTER и GAMER....

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
0x10
2460 / 1632 / 238
Регистрация: 24.11.2012
Сообщений: 4,015
01.03.2014, 15:01 #2
Это что за синтаксис такой?
Для Vec2 напишите конструктор по умолчанию, и в нем инициализируйте p1.
gray_fox
What a waste!
1506 / 1209 / 68
Регистрация: 21.04.2012
Сообщений: 2,543
Завершенные тесты: 3
01.03.2014, 15:04 #3
Цитата Сообщение от programina Посмотреть сообщение
C++
1
Point p1( 150.0f, 0.0f, 150.0f );
C++
1
Point p1 { 150.0f, 0.0f, 150.0f };
programina
1914 / 599 / 37
Регистрация: 23.10.2011
Сообщений: 4,468
Записей в блоге: 2
01.03.2014, 15:09  [ТС] #4
Цитата Сообщение от gray_fox Посмотреть сообщение
Point p1 { 150.0f, 0.0f, 150.0f };
gray_fox, это не работает в студии.
zss
Модератор
Эксперт С++
6355 / 5919 / 1919
Регистрация: 18.12.2011
Сообщений: 15,215
Завершенные тесты: 1
01.03.2014, 15:15 #5
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include <stdio.h>
 
struct Point
{
    float x, y, z;
     Point(float _x=0, float _y=0, float _z=0)
    {
        x = _x;
        y = _y;
        z = _z;
    }
};
struct Vec2
{
    Point p1;
    Vec2(){p1.x=150.0f;p1.y=0.0f;p1.z=150.0f;}
};
 
int main()
{
    Vec2 v;
    printf("%3.1f %3.1f %3.1f\n", v.p1.x, v.p1.y, v.p1.z);
}
0x10
2460 / 1632 / 238
Регистрация: 24.11.2012
Сообщений: 4,015
01.03.2014, 15:20 #6
Hint: список инициализации.
scenotaph
120 / 120 / 15
Регистрация: 29.03.2013
Сообщений: 237
01.03.2014, 15:21 #7
programina,
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
#include <stdio.h>
 
struct Point
{
    float x, y, z;   
    Point() {
        x=0;
        y=0;
        z=0;
    }
    Point(float _x, float _y, float _z)
    {
        x = _x;
        y = _y;
        z = _z;
    }
};
 
struct Vec2
{
    Point p1;
    Vec2() {
        p1 = Point(1,2,3);
    }
};
 
int main()
{
    Vec2 v;
    printf("%3.1f %3.1f %3.1f\n", v.p1.x, v.p1.y, v.p1.z);
}
например
DrOffset
7089 / 4230 / 950
Регистрация: 30.01.2014
Сообщений: 7,006
01.03.2014, 15:26 #8
Цитата Сообщение от programina Посмотреть сообщение
C++
1
2
3
4
struct Vec2
{
    Point p1( 150.0f, 0.0f, 150.0f );
}
;
И не должно это работать.
Вот:
C++
1
2
3
4
5
struct Vec2
{
    Point p1;
    Vec2() : p1(150.0f, 0.0f, 150.0f) {}
}
Либо как gray_fox показал (С++11), нужна последняя студия.
programina
1914 / 599 / 37
Регистрация: 23.10.2011
Сообщений: 4,468
Записей в блоге: 2
01.03.2014, 15:37  [ТС] #9
zss, спасибо, так работает.

Добавлено через 1 минуту
Цитата Сообщение от DrOffset Посмотреть сообщение
нужна последняя студия
А что там? Уже есть поддержка C++11?
DrOffset
7089 / 4230 / 950
Регистрация: 30.01.2014
Сообщений: 7,006
01.03.2014, 15:40 #10
Цитата Сообщение от programina Посмотреть сообщение
Уже есть поддержка C++11?
Насколько я знаю - не полностью. Но попробовать уже есть много чего
gray_fox
What a waste!
1506 / 1209 / 68
Регистрация: 21.04.2012
Сообщений: 2,543
Завершенные тесты: 3
01.03.2014, 15:40 #11
Цитата Сообщение от programina Посмотреть сообщение
А что там?
http://msdn.microsoft.com/en-us/library/hh567368.aspx
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
01.03.2014, 15:40
Привет! Вот еще темы с ответами:

Возвращение обьекта из шаблона - C++
Всем доброго дня ! Не могу понять в чем проблема ((( Есть класс шаблон А template &lt;class T&gt; class A

Инициализация обьекта класса списком C++ - C++
Здравствуйте, кому не сложно расскажите в кратце как мне сделать вот такую штуку: у меня есть некий класс реализующий бинарное дерево ...

Вернуть С-строку из обьекта класса - C++
Есть класс, у него метод c_str. Какой лучший способ вернуть С-строку? 1)void c_str(char* str) { // сформировать строку и записать в str...

Взятие обьекта по адресу в памяти - C++
Допустим, я знаю что по адресу 0x13242341 находится произвольный обьект. Как возвратить указатель типа void на данный адрес Типо так?...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
01.03.2014, 15:40
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru