如何动态生成数据类型

ssdest 2009-12-07 05:55:36
例如
string a="";
这个string 在程序运行时是动态生成的.
...全文
139 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
wartim 2009-12-08
  • 打赏
  • 举报
回复
这样?


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

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

X<String> S1 = new X<String>();
S1.t = "a";
MessageBox.Show(S1.t);

X<int> S2 = new X<int>();
S2.t = 10;
MessageBox.Show(S2.t.ToString());
}

class X<T>
{
public T t = default(T);
}
}
}
liherun 2009-12-08
  • 打赏
  • 举报
回复
这个学习
sxmonsy 2009-12-08
  • 打赏
  • 举报
回复
请查阅或搜索 反射
行者_ 2009-12-08
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 xiaohuliwql 的回复:]
那位能给详细讲解下怎么实现这个  我有一个方法要传参数

  public void dd(String s)
{
    // 要以这个参数 s 为类型 创建一个变量;
}
[/Quote]
你这里不是已经知道s的类型了么,在这个函数中可以直接引用这个s就可以啊
如果不知道类型可以用System.Type type = s.GetType();
a1984117 2009-12-08
  • 打赏
  • 举报
回复
学习
gomoku 2009-12-08
  • 打赏
  • 举报
回复
[Quote=引用楼主 xiaohuliwql 的回复:]
例如
string a="";
这个string 在程序运行时是动态生成的.
[/Quote]

既然是运行时才有的,你要怎么它,举个例子?
hongqun369 2009-12-08
  • 打赏
  • 举报
回复
直接定义成object型就行了!object是通用数据类型!
CNBeing 2009-12-08
  • 打赏
  • 举报
回复
[Quote=引用 9 楼 wartim 的回复:]
这样?

C# codeusing System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Text;using System.Windows.Forms;namespace WindowsApplication206
{publicpartialclass Form1 : Form
{public Form1()
{
InitializeComponent();

X<String> S1=new X<String>();
S1.t="a";
MessageBox.Show(S1.t);

X<int> S2=new X<int>();
S2.t=10;
MessageBox.Show(S2.t.ToString());
}class X<T>
{public T t=default(T);
}
}
}
[/Quote]


ding
zhujiazhi 2009-12-08
  • 打赏
  • 举报
回复
应该是些反射方面的知识的...
sxmonsy 2009-12-08
  • 打赏
  • 举报
回复

class Test1
{
public void Write1(string strText)
{
System.Web.HttpContext.Current.Response.Write("<script language=javascript>alert('"+strText+"');</script>");
}
}

protected void Button1_Click(object sender, EventArgs e)
{
string str = "aaa";

string cla= "程序集";
Assembly ass = Assembly.Load(cla);
Type t = ass.GetType(类名,true,true);
MethodInfo m= t.GetMethod("Write1"); }

结贴吧。
ssdest 2009-12-07
  • 打赏
  • 举报
回复
那位能给详细讲解下怎么实现这个 我有一个方法要传参数

public void dd(String s)
{
// 要以这个参数 s 为类型 创建一个变量;
}
ssdest 2009-12-07
  • 打赏
  • 举报
回复
只是局部的你说的动态分配内存不是理解,能说的详细点吗?
zetee 2009-12-07
  • 打赏
  • 举报
回复
看这个变量时全局的还是局部的

全局的:在类构造的时候生成:如 bb b1=new bb()
局部的:在运行代码的时候,动态分配内存生成对象 a
Python编程基础教程本教程旨在帮助初学者了解Python编程的基础知识和高级应用。我们将介绍Python的各个方面,包括基础语法、数据类型、控制结构、函数、文件操作、面向对象编程、模块和包、异常处理、装饰器、生成器、迭代器以及协程。1. Python基础Python是一种解释型、交互式的编程语言。它具有简单易学的语法和丰富的库,使得开发过程既快速又高效。在开始学习Python之前,建议您先熟悉基本的计算机科学概念,例如变量、数据类型、运算符等。2. 数据类型Python具有多种数据类型,包括数字(整数和浮点数)、字符串、布尔值、列表、元组、集合和字典等。这些数据类型在Python中有着广泛的应用,从简单的数值计算到复杂的数据处理。3. 控制结构控制结构是编程中的基本组成部分,它们决定了程序如何执行。Python支持条件语句(if-elif-else)和循环语句(for和while),可以根据程序中的特定条件和情况来选择适当的操作。4. 函数函数是封装一段代码的便捷方式,它们可以在需要时被调用。在Python中,您可以定义函数,并使用参数来传递数据。函数可以返回值,以便在调用它们时使用。5. 文件操作文件操作是编程中常见的任务之一。Python提供了许多内置的函数和方法来进行文件操作,如读取、写入和删除文件等。此外,Python还支持对文件进行高级操作,如读写二进制文件、文件锁定等。6. 面向对象编程面向对象编程是一种流行的编程范式,它使用类和对象的概念来构建复杂的系统。Python支持面向对象编程,您可以使用类来定义对象,并使用继承和多态等特性来扩展和定制对象的行为。7. 模块和包模块和包是Python中组织代码的重要工具。模块是一个包含Python代码的文件,而包则是一个包含多个模块的目录。通过使用模块和包,您可以轻松地组织和管理大型项目中的代码。8. 异常处理异常处理是Python中处理错误的方式之一。当程序中出现错误时,Python会抛出一个异常。通过使用try-except语句块,您可以捕获并处理这些异常,以确保程序的稳定性。9. 装饰器装饰器是Python中的高级功能之一,它允许您在函数或方法之间添加额外的功能,而不改变其原始实现。装饰器是一种强大的工具,可用于实现各种功能,如日志记录、性能分析等。10. 生成生成器是Python中的一种特殊类型的迭代器。通过使用生成器函数和方法,您可以在需要时生成数据,而不是一次性生成所有数据。这使得生成器在处理大量数据时非常有用,因为它们可以节省内存空间。11. 迭代器和协程迭代器和协程是Python中的两个重要概念。迭代器允许您遍历容器类型的数据结构(如列表和元组),而协程则是一种异步编程的方式,它允许您在程序中执行多个任务并发执行。这两个概念在处理大量数据和高性能应用程序方面非常有用。

110,539

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧