Помощь новичкам


#457

Перепроверил, вроде всё правильно. Вот оригинальный код:

private void Init(int num_neurons, int inputDepth, int inputWidth, int inputHeight, float l1_decay, float l2_decay, float bais_pref)
        {
            this.OutputDepth = num_neurons;

            this.InputHeight = inputHeight;
            this.InputWidth = inputWidth;
            this.InputDepth = inputDepth;

            this.L1_Decay_Mul = l1_decay;
            this.L2_Decay_Mul = l2_decay;

            this.num_inputs = inputWidth * inputHeight * inputDepth;
            this.OutputWidth = 1;
            this.OutputHeight = 1;


            var bais = bais_pref;
            this.Filters = new Vol[this.OutputDepth];
            for (int i = 0; i < this.OutputDepth; i++)
            {
                this.Filters[i] = (new Vol(1, 1, this.num_inputs));
            }

            this.Biases = new Vol(1, 1, this.OutputDepth, bais);
        }

Мой вариант полностью повторяет сишный; по строчкам переводил. При этом, работа оригинальной библиотеки никаких вопросов не вызывает. Может быть, всё дело в том, что оригинал-dll, а моя-модуль?


#458

Проводите построчную отладку, проверяйте где различия в том сколько оперативки потрачено.

Кстати вместо this в паскале self.


#459

Попробую. А за self-отдельное спасибо!


#460

Переделал под self, но ошибка осталась.


#461

Можете пожалуйста рассказать как работают эвенты?


#462

Вопрос появился. Есть модуль и код в котором используется модуль. В общем есть необходимость редактировать и код и модуль одновременно и после этого запускать. Есть возможность запускать программу, не перекидывая постоянно модуль в папку lib и libsourse.


#463

Конечно, просто держите модуль и то к чему он подключён в 1 папке.


#464

Не подскажите как избавиться от выделения текста белой полосой? Для вывода текста использую writeln()


#465

Установите прозрачный цвет кисти: GraphABC.SetBrushColor(Color.FromArgb($00000000));.


#467

Вы не знаете как центрировать строку в окне, ну или хотя бы сколько пикселей 1 символ.


#468

Авто центрирования в GraphABC, вроде, нету. Шрифты делятся на моноширинные и нет. У моноширинных все символы одинаковой ширины, это не очень красиво, но удобно в некоторых случаях, как программирование (при перемещении курсора вверх-вниз он не двигается вбок). Шрифт по умолчанию не моноширинный. Изменить какой шрифт используется можно через GraphABC.SetFontName (имена шрифтом можно искать в вёрде и в Панель управления\Все элементы панели управления\Шрифты). Получить размеры текста можно через GraphABC.GraphWindowGraphics.MeasureString и GraphABC.GraphWindowGraphics.MeasureCharacterRanges. Для обоих процедур понадобится переменная установленного сейчас шрифта которую можно получить из GraphABC.Font.NETFont.


#469

А ещё есть стандартные функции:

function TextWidth(s: string): integer; 
        Возвращает ширину строки s в пикселях при текущих настройках шрифта  
function TextHeight(s: string): integer; 
        Возвращает высоту строки s в пикселях при текущих настройках шрифта

#470

Здравствуйте! Как можно заменить операторы >> и << в Паскале? Или они здесь уже есть?:smile:


#471

Нет, нету. Я бы использовал ., то есть cout.wr('abc').wr(123).


#472

Я Вас не понял. Это оператор для int.


#473

А, я думал вы про оператор для записи/считывания потока. Побитовые сдвиги в паскале это shl(влево) и shr(вправо).


#474

Сишный извращенец…:stuck_out_tongue_winking_eye:


#475

Я не это имел ввиду! Это не я! :scream:


#476

А это и не Вам


#477

О, спасибо! Может, предложить Админам добавить соответствующий операторы?