第13講 ベクタを利用して4次魔方陣を作ろう!
第2話 データの交換プログラミング?!
前話の課題は、うっかりすると、
#include<iostream>
using namespace std;
void main(){
int a,b;
a=5;
b=8;
cout<<"a="<<a<<" "<<"b="<<b<<endl;
b=a;
a=b;
cout<<"a="<<a<<" "<<"b="<<b<<endl;
cout<<"プロジェクト終了"<<endl;
}
とやってしまうところですが、
これだと実行結果は
a=5 b=8
a=5 b=5
プロジェクト終了
となってしまい上手くいきません。
どうしてでしょうか。
実は、
b=a;
とした瞬間にbのデータは消滅してしまいます。
理由は、データはひとつしか入らないので、
5が入ってきたとき、8は箱から出て行ってしまいます。
そして、データは箱の中でしか生きられず、
箱から出ると消滅の運命を辿るのです。
aの方のデータは箱の中にとどまっていますから消えることはありません。
b=a;
という代入の操作の場合、aの箱から5を取り出して、それをbの箱に入れるわけではありません。
箱の中の値を参照(コピー)して、それをbの箱に入れるのです。
b=a;
という操作をした瞬間に
をなってしまっていますので、次の操作
a=b;
は何の意味もありません。
では、bのデータを残して交換するにはどうしたらよいでしょうか。
ヒントは、第3の箱を用意することです。
第1話へ 第3話へ
eclipse c++ 入門講義第1部へ
魔方陣 数独で学ぶ VBA 入門
数独のシンプルな解き方・簡単な解法の研究
VB講義へ
VB講義基礎へ
初心者のための世界で一番わかりやすいVisual C++入門基礎講座
初心者のための世界で一番わかりやすいVisual Basic入門基礎講座
初心者のための世界で一番わかりやすいVBA入門講義(基礎から応用まで)
初心者のための VC++による C言語 C++ 入門 基礎から応用まで第1部
eclipse java 入門
java 入門 サイト 基礎から応用まで
VC++ C言語 C++ 入門 初心者 基礎から応用まで
本サイトトップへ