配列(1次元2次元)から要素を削除するにはどうすればよいですか? - ページ 3

 
全く同じではありません。しかし、2次元配列の場合、構造体を使うのがベストな選択です。そして、その中で配列を扱うことが容易になります。
struct SA
{
     int i[], j[];
} A[];
 
Alexey Viktorov:
まだ、フォーラムサイトに直接コンパイラを作る方法は見つかっていないそうです。

まだサイトで考案されていないことを記事にするよりも、コンパイラを開いて試した方が早いですからね。質問内容を全く理解せずに回答し、今は話題を逸らしたいだけであることは明らかですが。

 
Ilya Malev:

まだサイトで考案されていないことを記事にするよりも、コンパイラを開いて試した方が早いですからね。質問内容を全く理解せずに回答し、今は話題を逸らしたいだけであることは明らかですが。

そう、頭に浮かんだことを考えるのです。厄介払いができた。

 
Konstantin Nikitin:
そうではありません。しかし、2次元配列の場合、構造体を使うのが最も良い方法です。そして、その内部で配列を扱うことが容易になります。

配列が4次元の場合はどうでしょうか?

 
私は孫娘と算数をするとき、問題を解くことやそのアルゴリズムに注目するのではなく、その問題が発生した本質に注目させるようにしています。
 
Алексей Тарабанов:

配列が4次元の場合はどうでしょうか?

20でもいいんです。全ては構造体の数に依存する。
以下は、私のコードの動作例です。

struct SIndicator
{
     int  id;
     char array[];
};
//+------------------------------------------------------------------+
struct SPositions
{
     double              price;
     ENUM_ORDER_TYPE     type_positiot;
     SIndicator          indicators[];
};
 
int a[][2]={1,2,11,12,21,22};
ArrayCopy(a,a,2,4);// работаем как с одномерным
ArrayResize(a,ArrayRange(a,0)-1);  
 
Konstantin Nikitin:

20個でもOKです。構造体の数にもよりますが。
以下は、私のコードの動作例です。

私はOOP言語でのプログラミングはしません。実は、私は全くプログラミングをせず、手を出しているだけなんです。

同時に、MTで任意の次元数の配列の要素を 削除する問題は、MTがなかった約35年前のPL/1で、すでに4つのメモリ管理モードを持っていたため、解決することができます。

ヒント:MTの配列は静的です。

 

Dmitry Fedoseev:

// работаем как с одномерным

一次元として動作する」という表現が、メソッドシグネチャを指していないのが残念で、そうでなければ本当にシンプルになるはずです。

 
Ilya Malev:

一次元として動作する」という表現が、メソッドシグネチャを指していないのが残念で、そうでなければ本当にシンプルになるはずです。

どのような方法ですか?どんなサイン?

ArrayCopy() は、構造体では動作しません。しかし、ポインターでは動作します。試してみないとわからないですね。