Модераторы: bsa
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Некоторые вопросы касательно структуризации данных, Связать разные типы вместе 
:(
    Опции темы
hoz
Дата 9.9.2014, 23:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 139
Регистрация: 27.6.2013

Репутация: нет
Всего: нет



 Имеются некоторые структуры, которые у меня были структурами, но, на данный момент, я так и не решил как это будет выглядеть. Этот вопрос я и хочу задать. Вот что имеется, на данный момент:

Код

struct Position_Properties
{
datetime    gdt_Expiration;      // Срок истечения отложенного ордера
datetime    gdt_OpenTime;        // Время открытия выбранной позиции
double      gd_OpenPrice;        // Цена открытия
double      gd_Lots;             // Объём позиции на открытие
double      gd_CurSL;            // Текущий Stop Loss выбранной позиции
double      gd_NewSL;            // Новый Stop Loss выбранной позиции
double      gd_CurTP;            // Текущий Take Profit выбранной позиции
double      gd_NewTP;            // Новый Take Profit выбранной позиции
int         gi_CurTicket;        // Тикет выбранного ордера
int         gi_Type;             // Тип торговой операции
int         gi_Slippage;         // Максимально допустимое отклонение цены для рыночных ордеров
int         gi_Magic;            // Магический номер
string      gs_Comment;          // Комментарий
string      gs_Symbol;           // Наименование фин. инструмента, с которым производится операция
ulong       gu_Duration;         // Длительность позиции в секундах
}


Когда я планировал при написании структуру, я понимал, что придётся некоторые вещи дорабатывать. И все поля структуры будут массивами по ходу.
 Ситуация такая, что я думал, чтоб каждое поле было в виде массива типа:

Код

struct Position_Properties
{
datetime    [gi_Ticket][gdt_Expiration];      // Срок истечения отложенного ордера
datetime    [gi_Ticket][gdt_OpenTime[;        // Время открытия выбранной позиции
double      [gi_Ticket][gd_OpenPrice[;        // Цена открытия
double      [gi_Ticket][gd_Lots[;             // Объём позиции на открытие
double      [gi_Ticket][gd_CurSL[;            // Текущий Stop Loss выбранной позиции
double      [gi_Ticket][gd_NewSL[;            // Новый Stop Loss выбранной позиции
double      [gi_Ticket][gd_CurTP[;            // Текущий Take Profit выбранной позиции
double      [gi_Ticket][gd_NewTP[;            // Новый Take Profit выбранной позиции
int         [gi_Ticket][gi_CurTicket[;        // Тикет выбранного ордера
int         [gi_Ticket][gi_Type[;             // Тип торговой операции
int         [gi_Ticket][gi_Slippage[;         // Максимально допустимое отклонение цены для рыночных ордеров
int         [gi_Ticket][gi_Magic[;            // Магический номер
string      [gi_Ticket][gs_Comment[;          // Комментарий
string      [gi_Ticket][gs_Symbol[;           // Наименование фин. инструмента, с которым производится операция
ulong       [gi_Ticket][gu_Duration[;         // Длительность позиции в секундах
}


Но тут есть нестыковка. В том, что в массивах данные должны быть одного типа. Общее для всех измерение gi_Ticket имеет тип int. Кроме того есть ещё измерения с типом double, string, datetime и  ulong. Выходит что в виде массива данную структуру преобразовать не выйдет. Какие ещё есть способы реализации подобной задачи?

Я думал, сделать в виде кучи объектов одной структуры (класса), но это не совсем вариант. Т.к. с массивом то удобнее работать.
PM MAIL   Вверх
sQu1rr
Дата 9.9.2014, 23:25 (ссылка) |    (голосов:3) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 597
Регистрация: 11.11.2008
Где: london

Репутация: 3
Всего: 13



Немного не понял чем не угодил такой вариант
Код

struct Position_Properties {
...
};
...
Position_Properties props[gi_Ticket];
props[0].gi_Magic = 42;
props[0].gu_Duration = 666;
props[1].gu_Duration = 777;
props[gi_Ticket-1].member = value;

?
PM MAIL Skype GTalk   Вверх
hoz
Дата 10.9.2014, 11:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 139
Регистрация: 27.6.2013

Репутация: нет
Всего: нет



Цитата(sQu1rr @  9.9.2014,  23:25 Найти цитируемый пост)
Немного не понял чем не угодил такой вариант

На самом деле я про такой вариант как-то не додумался. Получается, в таком случае props[gs_Ticket] будет являться массивом объектов класса Position_Properties, верно?
PM MAIL   Вверх
kemiisto
Дата 10.9.2014, 11:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Дикий Кот. =^.^=
****
Награды: 1



Профиль
Группа: Участник Клуба
Сообщений: 3292
Регистрация: 29.7.2007

Репутация: 5
Всего: 160



hoz, Вам бы, ей богу, что-нибудь почитать фундаментальное по алгоритмам и структурам данных... Вирта того же. А то если у Вас в таких местах возникают такие идеи...



--------------------
PM MAIL WWW GTalk Jabber   Вверх
hoz
Дата 10.9.2014, 12:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 139
Регистрация: 27.6.2013

Репутация: нет
Всего: нет



kemiisto, Вы это имеете ввиду?
PM MAIL   Вверх
kemiisto
Дата 10.9.2014, 13:11 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Дикий Кот. =^.^=
****
Награды: 1



Профиль
Группа: Участник Клуба
Сообщений: 3292
Регистрация: 29.7.2007

Репутация: 5
Всего: 160



hoz, ага. "Алгоритмы + структуры данных = программы". Можно старую версию (середины 80-х что-ли), можно новую (середины 2000-х). Не суть. Там коротко, хоть и не на С/С++, а на Pascal/Oberon.


--------------------
PM MAIL WWW GTalk Jabber   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "C/C++: Для новичков"
JackYF
bsa

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, JackYF, bsa.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.0526 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.