iSAMrx72's思いつきBlog

twitterが使いこなせない管理人のメモです。思いついたとき書きます。
トップスポンサー広告スポンサーサイト

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
--/--/ (--) --:--| スポンサー広告 | コメント(-) | トラックバック(-) | 編集
トッププログラミング言語C#興味の有る人居ないですよね。WindowsApplicationです。

C#興味の有る人居ないですよね。WindowsApplicationです。

Globalと言うClassで文字列の配列への入り口と、誰かが言ってました、を作ります。

button1_Clickで実際の配列を作り、入り口をGlobalの入り口へコピーします。

するとstr自体は無くなるはずですが、Global.Strは存在しますので、button2_Clickで

表示できます。ということはstr自体は消滅しないで、アクセスできないだけ?

又は、オブジェクトもコピーになるのか、どちらかでしょう。

続きはFormに関してのコードなので、コンパイルには必要ですが、内容には

直接関係がありません。

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;

namespace WindowsFormsApplication1
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void button1_Click(object sender, EventArgs e)
        {
            string[] str = { "ABC", "DEF", "GHI" };
            Global.Str = str;
           
        }

        private void button2_Click(object sender, EventArgs e)
        {
            MessageBox.Show(Global.Str[0]);
            //MessageBox.Show(str[0]); これはエラーになります。strがローカルな変数です。
        }
    }
}


namespace WindowsFormsApplication1
{
    public static class Global
    {
        public static string[] Str;
    }
}


namespace WindowsFormsApplication1
{
    static class Program
    {
        /// <summary>
        /// アプリケーションのメイン エントリ ポイントです。
        /// </summary>
        [STAThread]
        static void Main()
        {
            Application.EnableVisualStyles();
            Application.SetCompatibleTextRenderingDefault(false);
            Application.Run(new Form1());
        }
    }
}



namespace WindowsFormsApplication1
{
    partial class Form1
    {
        /// <summary>
        /// 必要なデザイナー変数です。
        /// </summary>
        private System.ComponentModel.IContainer components = null;

        /// <summary>
        /// 使用中のリソースをすべてクリーンアップします。
        /// </summary>
        /// <param name="disposing">マネージ リソースが破棄される場合 true、破棄されない場合は false です。</param>
        protected override void Dispose(bool disposing)
        {
            if (disposing && (components != null))
            {
                components.Dispose();
            }
            base.Dispose(disposing);
        }

        #region Windows フォーム デザイナーで生成されたコード

        /// <summary>
        /// デザイナー サポートに必要なメソッドです。このメソッドの内容を
        /// コード エディターで変更しないでください。
        /// </summary>
        private void InitializeComponent()
        {
            this.button1 = new System.Windows.Forms.Button();
            this.button2 = new System.Windows.Forms.Button();
            this.SuspendLayout();
            //
            // button1
            //
            this.button1.Location = new System.Drawing.Point(155, 61);
            this.button1.Name = "button1";
            this.button1.Size = new System.Drawing.Size(122, 51);
            this.button1.TabIndex = 0;
            this.button1.Text = "値の設定";
            this.button1.UseVisualStyleBackColor = true;
            this.button1.Click += new System.EventHandler(this.button1_Click);
            //
            // button2
            //
            this.button2.Location = new System.Drawing.Point(158, 152);
            this.button2.Name = "button2";
            this.button2.Size = new System.Drawing.Size(118, 52);
            this.button2.TabIndex = 1;
            this.button2.Text = "値の表示";
            this.button2.UseVisualStyleBackColor = true;
            this.button2.Click += new System.EventHandler(this.button2_Click);
            //
            // Form1
            //
            this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F);
            this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
            this.ClientSize = new System.Drawing.Size(284, 262);
            this.Controls.Add(this.button2);
            this.Controls.Add(this.button1);
            this.Name = "Form1";
            this.Text = "Form1";
            this.ResumeLayout(false);

        }

        #endregion

        private System.Windows.Forms.Button button1;
        private System.Windows.Forms.Button button2;
    }
}

スポンサーサイト
12/04/ (火) 12:21| プログラミング言語コメント(0) | トラックバック(-) | 編集
URL
コメント
パスワード
秘密
管理者にだけ表示を許可する
 
プロフィール

isamrx73

Author:isamrx73
FC2ブログへようこそ!

最新記事
最新コメント
最新トラックバック

月別アーカイブ
カテゴリ
検索フォーム

RSSリンクの表示
リンク
ブロとも申請フォーム
QRコード

QR

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。