Перейти к публикации
  • Сейчас на странице   Всего пользователей: 7   (0 пользователей, 7 гостей)

Hed-kun

Программирование, т. 5.1.

Рекомендованные сообщения

конструктор удаления :palevo:

 

мой мозг :palevo:


Торжество разума в том, чтобы уживаться с теми, у кого этого разума нет. Вольтер.
Чтобы хорошо высыпаться, нужно спать 8 часов в день. И еще столько же ночью.

Поделиться сообщением


Ссылка на сообщение

Че то внатуре вглос, конструктор конструктор копирования идеструктор во вроде нарм

Поделиться сообщением


Ссылка на сообщение

почти, в 11ых плюсах появился еще конструктор перемещения :trollface:


Торжество разума в том, чтобы уживаться с теми, у кого этого разума нет. Вольтер.
Чтобы хорошо высыпаться, нужно спать 8 часов в день. И еще столько же ночью.

Поделиться сообщением


Ссылка на сообщение

get_schoolboy("Обязательное_поле").demoteTo("жс макака")


Торжество разума в том, чтобы уживаться с теми, у кого этого разума нет. Вольтер.
Чтобы хорошо высыпаться, нужно спать 8 часов в день. И еще столько же ночью.

Поделиться сообщением


Ссылка на сообщение

Твое сообщение оскорбляет жс макак


userbar-53933.png

http://codepen.io/suez/ - they see me bydlocoding, they hatin.

Поделиться сообщением


Ссылка на сообщение
(изменено)

Вопрос по теме c# Windows Form. Допустим при нажатии кнопки(button), у меня появляется на панели ползунок(trackBar). Правильнее его инициализировать в designer.cs или в функции отвечающую за нажатие кнопки (private void button1_Click(object sender, EventArgs e)), просто я хотел как то сделать 2 вариантом, но у меня почему то не получается выдаётся ошибка в функции отвечающей за положение ползунка(private void trackBar1_Scroll(object sender, EventArgs e)) в ней используется метод trackBar1.Value ошибка :"Ошибка 1 Имя "trackBar1" отсутствует в текущем контексте".

Вот код Form1.cs

 

 

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

using Tao.OpenGl;
using Tao.FreeGlut;
using Tao.Platform.Windows;
namespace kglaba2
{
   public partial class Form1 : Form
   {

    public Form1()
    {
	    InitializeComponent();

	    AnT.InitializeContexts();
    }
    double a = 0, b = 0, c = -6;




    void timer_Tick(object sender, EventArgs e)
    {
	    drawSphere();
    }
    private void AnT_Load(object sender, EventArgs e)
    {
	    // инициализация Glut
	    Glut.glutInit();
	    Gl.glClear(Gl.GL_COLOR_BUFFER_BIT | Gl.GL_DEPTH_BUFFER_BIT);
	    // очитка окна
	    Gl.glClearColor(255, 255, 255, 1);
	    // установка порта вывода в соотвествии с размерами элемента anT
	    Gl.glViewport(0, 0, AnT.Width, AnT.Height);

	    // настройка проекции
	    Gl.glMatrixMode(Gl.GL_PROJECTION);
	    Gl.glLoadIdentity();
	    Glu.gluPerspective(45, (float)AnT.Width / (float)AnT.Height, 0.1, 200);
	    Gl.glMatrixMode(Gl.GL_MODELVIEW);
	    Gl.glLoadIdentity();
	    // настройка параметров OpenGL для визуализации
	    Gl.glEnable(Gl.GL_DEPTH_TEST);


    }
   private void drawSphere ()
    {
	    Gl.glClear(Gl.GL_COLOR_BUFFER_BIT | Gl.GL_DEPTH_BUFFER_BIT);
	    Gl.glLoadIdentity();
	    Gl.glColor3f(1.0f, 0, 0);
	    Gl.glPushMatrix();
	    Gl.glTranslated(a, b, c);
	    Gl.glRotated(45, 1, 1, 0);
	    // рисуем сферу с помощью библиотеки FreeGLUT
	    Glut.glutWireSphere(2, 32, 32);
	    Gl.glPopMatrix();
	    Gl.glFlush();
	    AnT.Invalidate();
    }
   private void button1_Click(object sender, EventArgs e)
   { 
	    //ползунок 1
	    System.Windows.Forms.TrackBar trackBar1;
	    trackBar1 = new System.Windows.Forms.TrackBar();
	    ((System.ComponentModel.ISupportInitialize)(trackBar1)).BeginInit();
	    this.Controls.Add(trackBar1);
	    trackBar1.AccessibleName = "";
	    trackBar1.Minimum = -6;
	    trackBar1.Maximum = 6;
	    trackBar1.TickFrequency = 1;
	    trackBar1.Location = new System.Drawing.Point(489, 86);
	    trackBar1.Name = "trackBar1";
	    trackBar1.Orientation = System.Windows.Forms.Orientation.Vertical;
	    trackBar1.Size = new System.Drawing.Size(45, 142);
	    trackBar1.TabIndex = 3;
	    trackBar1.Scroll += new System.EventHandler(trackBar1_Scroll);
	    //таймер
	    System.Windows.Forms.Timer timer = new System.Windows.Forms.Timer();
	    timer.Interval = 30;
	    timer.Tick += new EventHandler(timer_Tick);
	    timer.Start();


	    drawSphere();
    }
    private void button2_Click(object sender, EventArgs e)
    {
	    Application.Exit();
    }
    private void trackBar1_Scroll(object sender, EventArgs e)
    {
	    a = trackBar1.Value;
    }	  
   }
}

 

 

и Designer.cs

 

namespace kglaba2
{
   partial class Form1
   {
       /// <summary>
       /// Требуется переменная конструктора.
       /// </summary>
       private System.ComponentModel.IContainer components = null;

       /// <summary>
       /// Освободить все используемые ресурсы.
       /// </summary>
       /// <param name="disposing">истинно, если управляемый ресурс должен быть удален; иначе ложно.</param>
       protected override void Dispose(bool disposing)
       {
           if (disposing && (components != null))
           {
               components.Dispose();
           }
           base.Dispose(disposing);
       }

       #region Код, автоматически созданный конструктором форм Windows

       /// <summary>
       /// Обязательный метод для поддержки конструктора - не изменяйте
       /// содержимое данного метода при помощи редактора кода.
       /// </summary>
       private void InitializeComponent()
       {
           this.AnT = new Tao.Platform.Windows.SimpleOpenGlControl();
           this.button1 = new System.Windows.Forms.Button();
           this.button2 = new System.Windows.Forms.Button();
           //this.trackBar1 = new System.Windows.Forms.TrackBar();
          //((System.ComponentModel.ISupportInitialize)(this.trackBar1)).BeginInit();
           this.SuspendLayout();
           // 
           // AnT
           // 
           this.AnT.AccumBits = ((byte)(0));
           this.AnT.AutoCheckErrors = false;
           this.AnT.AutoFinish = false;
           this.AnT.AutoMakeCurrent = true;
           this.AnT.AutoSwapBuffers = true;
           this.AnT.BackColor = System.Drawing.Color.White;
           this.AnT.ColorBits = ((byte)(32));
           this.AnT.DepthBits = ((byte)(16));
           this.AnT.ForeColor = System.Drawing.SystemColors.ActiveCaptionText;
           this.AnT.Location = new System.Drawing.Point(60, 1);
           this.AnT.Name = "AnT";
           this.AnT.Size = new System.Drawing.Size(423, 301);
           this.AnT.StencilBits = ((byte)(0));
           this.AnT.TabIndex = 0;
           this.AnT.Load += new System.EventHandler(this.AnT_Load);
           // 
           // button1
           // 
           this.button1.Location = new System.Drawing.Point(480, 1);
           this.button1.Name = "button1";
           this.button1.Size = new System.Drawing.Size(158, 23);
           this.button1.TabIndex = 1;
           this.button1.Text = "Рисовать";
           this.button1.UseVisualStyleBackColor = true;
           this.button1.Click += new System.EventHandler(this.button1_Click);
           // 
           // button2
           // 
           this.button2.Location = new System.Drawing.Point(480, 30);
           this.button2.Name = "button2";
           this.button2.Size = new System.Drawing.Size(158, 23);
           this.button2.TabIndex = 2;
           this.button2.Text = "Выйти";
           this.button2.UseVisualStyleBackColor = true;
           this.button2.Click += new System.EventHandler(this.button2_Click);
           // 
           // trackBar1
           // 
          /* this.trackBar1.AccessibleName = "";
           this.trackBar1.Minimum = -6;
           this.trackBar1.Maximum = 6;
           this.trackBar1.TickFrequency = 1;
           this.trackBar1.Location = new System.Drawing.Point(489, 86);
           this.trackBar1.Name = "trackBar1";
           this.trackBar1.Orientation = System.Windows.Forms.Orientation.Vertical;
           this.trackBar1.Size = new System.Drawing.Size(45, 142);
           this.trackBar1.TabIndex = 3;
           this.trackBar1.Scroll += new System.EventHandler(this.trackBar1_Scroll);*/
           // 
           // Form1
           // 
           this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
           this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
           this.ClientSize = new System.Drawing.Size(643, 343);
          // this.Controls.Add(this.trackBar1);
           this.Controls.Add(this.button2);
           this.Controls.Add(this.button1);
           this.Controls.Add(this.AnT);
           this.Name = "Form1";
           this.Text = "Form1";
          // ((System.ComponentModel.ISupportInitialize)(this.trackBar1)).EndInit();
           this.ResumeLayout(false);
           this.PerformLayout();

       }

       #endregion

       private Tao.Platform.Windows.SimpleOpenGlControl AnT;
       private System.Windows.Forms.Button button1;
       private System.Windows.Forms.Button button2;
      // private System.Windows.Forms.TrackBar trackBar1;

   }
}

 

Строки которые были как бы для 1 варианта закоменчены в designer


Изменено пользователем P0JIT0H

Поделиться сообщением


Ссылка на сообщение

2TheDeadSkin,

 

 

путем удаления из исходной матрицы строки и столбца, на пересечении которых расположен элемент с наибольшим значением.

тоесть я так понимаю удаляется столбец i и строка j где [i, j] имеет наибольшее значение?

 

тогда без понятия что там за тонна с++ кода выводящего хуйпойми что, но переделать матрицу по идее изи

если я ничего не напортачил и правильно понял задание - матрица mat должна быть переписана в mat2 без одной строки и одного ряда где находится самый большой элемент

 


int _tmain(int argc, _TCHAR* argv[])
{	  
int mat[3][3] = { {1,2,4}, {9,5,6}, {7,8,4} };
int mat2[2][2];

/*
1 2 3
4 5 6
7 8 9
*/

int i, j, k, maxI, maxJ;
int max = mat[0][0];

for (i = 0; i < 3; i++)
{
	for (j = 0; j < 3; j++)
	{
		if (mat[i][j] > max)
		{
			max = mat[i][j];
			maxI=i; // зачем тут +1 если ты пишешь индекс?
			maxJ=j;
		}
	}
}

for (i = 0; i < 3; i++)
{
	if (i == maxI)
		continue;
	for (j = 0; j < 3; j++)
	{
		if (j == maxJ)
			continue;

		int ii = i, jj = j;

		if (i >= maxI) ii--;
		if (j >= maxJ) jj--;

		mat2[ii][jj] = mat[i][j];
	}
}
}

 

спасибо огромное) делает всё как нужно)

По поводу вывода: препод уебан, требует выводить практически все шаги и всю инфу.

хуёво твоему преподу, он походу не умеет читать код((

пришли на пару, сказал разобраться с динамическим двумерным массивом, а сам сука пошел пить чай...

кароче сидим рофлим

Поделиться сообщением


Ссылка на сообщение

2TheDeadSkin,

 

 

путем удаления из исходной матрицы строки и столбца, на пересечении которых расположен элемент с наибольшим значением.

тоесть я так понимаю удаляется столбец i и строка j где [i, j] имеет наибольшее значение?

 

тогда без понятия что там за тонна с++ кода выводящего хуйпойми что, но переделать матрицу по идее изи

если я ничего не напортачил и правильно понял задание - матрица mat должна быть переписана в mat2 без одной строки и одного ряда где находится самый большой элемент

 


int _tmain(int argc, _TCHAR* argv[])
{	  
int mat[3][3] = { {1,2,4}, {9,5,6}, {7,8,4} };
int mat2[2][2];

/*
1 2 3
4 5 6
7 8 9
*/

int i, j, k, maxI, maxJ;
int max = mat[0][0];

for (i = 0; i < 3; i++)
{
	for (j = 0; j < 3; j++)
	{
		if (mat[i][j] > max)
		{
			max = mat[i][j];
			maxI=i; // зачем тут +1 если ты пишешь индекс?
			maxJ=j;
		}
	}
}

for (i = 0; i < 3; i++)
{
	if (i == maxI)
		continue;
	for (j = 0; j < 3; j++)
	{
		if (j == maxJ)
			continue;

		int ii = i, jj = j;

		if (i >= maxI) ii--;
		if (j >= maxJ) jj--;

		mat2[ii][jj] = mat[i][j];
	}
}
}

 

спасибо огромное) делает всё как нужно)

По поводу вывода: препод уебан, требует выводить практически все шаги и всю инфу.

хуёво твоему преподу, он походу не умеет читать код((

пришли на пару, сказал разобраться с динамическим двумерным массивом, а сам сука пошел пить чай...

кароче сидим рофлим

ничего кроме TzyaGpq.gif сказать не могу

Поделиться сообщением


Ссылка на сообщение

Проходим в плюсах конструкторы, сделал короч конструктор копирования, конструктор обычный(или как он называется), конструктор удаления, короч все вери ок, сдал, потом препод сказала типо узнай про перегрузку какую-то, ваще них не понял, кто знает че за перегрузка в плюсах?

перегрузка это когда дочерний класс определяет метод с таким же названием (и параметрами) как у родительского класса, таким образом, при вызове этого метода у дочернего класса исполнится то, что "ближе к телу", то есть перегруженный метод

 

если в кратце, то:

ChildClass.TwoPoyLoshara() > ParentClass.TwoPoyLoshara()

лол нет. то, что ты описал - это переопределение. а перегрузка - это такой же метод, но с другими параметрами


Колы я выросту - то хочу буты такым як я

5c8bbc85b99e.gif

 

годные смайлы

Поделиться сообщением


Ссылка на сообщение

он просто на англ это всё учил походу

там override и overload (я их и сам путаю по кд)

Поделиться сообщением


Ссылка на сообщение

2TheDeadSkin,

 

 

путем удаления из исходной матрицы строки и столбца, на пересечении которых расположен элемент с наибольшим значением.

тоесть я так понимаю удаляется столбец i и строка j где [i, j] имеет наибольшее значение?

 

тогда без понятия что там за тонна с++ кода выводящего хуйпойми что, но переделать матрицу по идее изи

если я ничего не напортачил и правильно понял задание - матрица mat должна быть переписана в mat2 без одной строки и одного ряда где находится самый большой элемент

 


int _tmain(int argc, _TCHAR* argv[])
{	  
int mat[3][3] = { {1,2,4}, {9,5,6}, {7,8,4} };
int mat2[2][2];

/*
1 2 3
4 5 6
7 8 9
*/

int i, j, k, maxI, maxJ;
int max = mat[0][0];

for (i = 0; i < 3; i++)
{
	for (j = 0; j < 3; j++)
	{
		if (mat[i][j] > max)
		{
			max = mat[i][j];
			maxI=i; // зачем тут +1 если ты пишешь индекс?
			maxJ=j;
		}
	}
}

for (i = 0; i < 3; i++)
{
	if (i == maxI)
		continue;
	for (j = 0; j < 3; j++)
	{
		if (j == maxJ)
			continue;

		int ii = i, jj = j;

		if (i >= maxI) ii--;
		if (j >= maxJ) jj--;

		mat2[ii][jj] = mat[i][j];
	}
}
}

 

спасибо огромное) делает всё как нужно)

По поводу вывода: препод уебан, требует выводить практически все шаги и всю инфу.

хуёво твоему преподу, он походу не умеет читать код((

пришли на пару, сказал разобраться с динамическим двумерным массивом, а сам сука пошел пить чай...

кароче сидим рофлим

где учишься?)


 

4Ht5T.jpg

 

8FegEdj.jpg

Поделиться сообщением


Ссылка на сообщение

он просто на англ это всё учил походу

там override и overload (я их и сам путаю по кд)

а что путать то? по логике понятно, что первый переопределяет, второй перезагружает

Мобильное приложение для продоты https://play.google....id=ru.prodota.m

Поделиться сообщением


Ссылка на сообщение

он просто на англ это всё учил походу

там override и overload (я их и сам путаю по кд)

а что путать то? по логике понятно, что первый переопределяет, второй перезагружает

по логике long - длинное число, а дабл - двойное "уточнение", но если ты давно не пользовался этими терминами, то чисто на автомате спутать их - проще простого

так же и с перезрузкой/переопределением, они-то разные по логике, но сука похожи по "общему" смыслу и пока эту логику не включишь - есть все шансы принять одно за другое

Поделиться сообщением


Ссылка на сообщение

Ребят, возник вопрос. Возможно не в ту тему пишу, но все же. Есть 2 компа на работе и по сути они могут работать 24\7 . Мощности не ахти, супер игры не поставишь тд. Суть вопроса в чем. Что можно поставить постоянно работающий комп, чтобы иметь с этого профит?(Бруты, Боты и тд.) Все вещи, которыми я занимал комп до этого уже бесполезны.

Поделиться сообщением


Ссылка на сообщение

майнинг биткоинов :nate:

 

но это требует производительности, будет жрать электричество етц

Поделиться сообщением


Ссылка на сообщение

майнинг биткоинов :nate:

 

но это требует производительности, будет жрать электричество етц

Точно не варик.

Поделиться сообщением


Ссылка на сообщение

Ребят, возник вопрос. Возможно не в ту тему пишу, но все же. Есть 2 компа на работе и по сути они могут работать 24\7 . Мощности не ахти, супер игры не поставишь тд. Суть вопроса в чем. Что можно поставить постоянно работающий комп, чтобы иметь с этого профит?(Бруты, Боты и тд.) Все вещи, которыми я занимал комп до этого уже бесполезны.

ничем

майнинг биткоинов :nate:

 

но это требует производительности, будет жрать электричество етц

нихуя не намайнит

Мобильное приложение для продоты https://play.google....id=ru.prodota.m

Поделиться сообщением


Ссылка на сообщение

Ребят, возник вопрос. Возможно не в ту тему пишу, но все же. Есть 2 компа на работе и по сути они могут работать 24\7 . Мощности не ахти, супер игры не поставишь тд. Суть вопроса в чем. Что можно поставить постоянно работающий комп, чтобы иметь с этого профит?(Бруты, Боты и тд.) Все вещи, которыми я занимал комп до этого уже бесполезны.

запустить бот, который будет ставить классы под фотографиями ветеринаров


Колы я выросту - то хочу буты такым як я

5c8bbc85b99e.gif

 

годные смайлы

Поделиться сообщением


Ссылка на сообщение
Гость
Эта тема закрыта для публикации сообщений.

×
×
  • Создать...