1.结构体里面是否可以有属性?
可以有属性。实测代码以及截图。
In C#, we can use the following statement to convert a string s to an integer num 124
A.int num = Convert.ToInt32(s);
B.int nym = Int32.Parse(s);
C.int num = s.ToInt();(不可以)
D.int num = int.Parse(s);(测试可以过)
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text; namespace Fraction
{
public struct StructTest
{
private int x;
public int X
{
get { return x; }
set { x = value; }
}
public StructTest(int _x)
{
x = _x;
}
}
class Program
{
static void Main(string[] args)
{
StructTest str = new StructTest();
str.X = ;
Console.WriteLine(str.X);
string s = "";
int num1 = Convert.ToInt32(s);
int num2 = Int32.Parse(s);
//int num3 = s.ToInt();
int num4 = int.Parse(s);
Console.WriteLine("num1="+num1);
Console.WriteLine("num2="+num2);
//Console.WriteLine(num3);
Console.WriteLine("num4="+num4);
Console.Read();
}
}
}
Property 可声明在 class, struct, interface里!
使用属性的好处:
允许只读或者只写字段;
可以在访问时验证字段;
接口和实现的数据可以不同;
替换接口中的数据。
2.参数传递的方式:按值传递、按引用传递。没有按位置传递、没有按名称传递。
3.LINQ查询:LINQ to Object, LINQ to XML, LINQ to ADO.NET 包括两种独立的技术: LINQ to DataSet 和 LINQ to SQL
对于LINQ to Object可以查询数组等里面的数据;
对于LINQ to SQL可以查询SQL能够查询的表中的数据;
对于LINQ to XML可以查询XML文档的标签等;
对于LINQ to DataSet可以查询DataSet中的数据;
3.委托的形式
f = delegate(int x){return x + 1;};
f = x => x+1;
测试代码:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text; namespace Lambda
{
class Program
{
static void Main(string[] args)
{
int sum = ;
Func<int, int> f1 = x => * x + ;
Func<int, int, bool> f2 = (x, y) => x > y;
Func<string, int, string> f3 = (x, y) => x.Substring(y);
Func<int, int> f4 = (x) => sum += x;
Action a1 = () => { System.Console.WriteLine("HelloWorld"); };
Action <int> a2 = (x) => { System.Console.WriteLine(x); };
Action <bool> a3 = (x) => { System.Console.WriteLine(x); };
Action<string> a4 = (x) => { System.Console.WriteLine(x); }; for (int i = ; i <= ; i++ )
{
f4(i);
}
a2(sum);
a1();
a2(f1());
a3(f2(, ));
a4(f3("Zhengpengfei", ));
System.Console.Read();
}
}
}
4.内嵌类型可以是类、结构、结构体、枚举、委托
具体见PPT
5.类与结构体、类与接口、重载(overloading)与重写(overriding)、虚方法与抽象方法、托管代码与非托管代码
6.Constants can be declared static (True)
在C#中const与static不能同时修饰变量;
7.装箱boxing:值类型转换为引用类型;
拆箱unboxing:引用类型转为值类型。
8.An interface member is implemented or _inherited__from a base class
接口的成员要么自己定义要么继承自父类。
接口不能包含常量、字段、操作符、构造函数、析构函数、任何静态成员、方法的实现;
9.What is the difference between private assembly and public assembly?
private assembly只能被一个应用程序使用、保存在应用程序目录中、不要求强命名、无法签名;
public assembly可以被所用应用程序使用、保存在全局程序集中、必须有一个强命名、可以签名
另外强命名包括四个部分:Assembly的命名、Assembly的版本号、Assembly的文化属性、Assembly的公钥。
10.Which of the following are correct ways to pass a parameter to a attribute?
1) By value 2)by reference 3)by position 4)by name
A 1 ,2 B 3,4 C 1,2,3,4 D1,2,3
随机推荐
-
spring mvc 和 velocity整合
java.lang.ClassNotFoundException: org.springframework.ui.velocity.VelocityEngineFactory 考虑是不是没有添加spr ...
-
关于form.submit()不能提交表单的错误原因
来源:http://www.ido321.com/948.html 直接上代码把: 1: <div id="register"> 2: <h4>会员注冊&l ...
-
QT5删除隐藏目录+隐藏文件(使用Process::start函数调用系统命令,且等待到结束)
1.功能需求 删除一个目录(包括目录本身),同时删除该目录中所有文件及目录(含隐藏的) 2.遇到的问题 qt5中已经有了递归删除目录的函数--->bool QDir::removeRecursi ...
-
Matlab实现PCA
在主成分分析(PCA)中,介绍了PCA的数学原理,其有用Matlab能够非常方便地对矩阵进行操作! 比方,用Matlab求多个样本的协方差矩阵.求矩阵的特征根和特征向量等. 以下介绍用Matlab实现 ...
-
好好写代码吧,没事别瞎B去创业!
知乎上看到这个问题 正好最近想写篇关于此的文章,于是就回答了一波. 也贴到这里来,回答如下 : 本问题简直为我量身定制,做为一个正在创业中的苦逼少年,说说我是如何从鼓吹怂恿身边人创业转换成反对创业的. ...
-
delphi 给EXE文件增加区段
学习 PE 可执行文件格式,用 delphi 实现给 EXE 文件增加区段 源码下载(StudyPE.zip) unit uStudyPE; interface uses Classes, SysUt ...
-
python学习-序列基本知识
序列是Python中最基本的数据结构.序列中的每个元素都分配一个数字 - 它的位置,或索引,第一个索引是0,第二个索引是1,依此类推. 用到的主要序列有元组和列表. 先定义一个列表 names=[&q ...
-
LY.JAVA面向对象编程.修饰符
2018-07-18 09:20:25 /* 修饰符: 权限修饰符:private,默认的,protected,public 状态修饰符:static,final 抽象修饰符:abstract 类: ...
-
java垃圾回收几种算法
1.引用计数法 2.标记——清除法 3.标记——整理算法 4.copying算法 5.generation算法(新生代.老年代.持久代) 详情参考:深入理解 Java 垃圾回收机制
-
Java中的设计模式之单例模式
Java中的单例模式 设计模式是软件开发过程中经验的积累 一.单例模式 1.单例模式是一种常用的软件设计模式,通过单例模式可以保证系统中一个类只有一个实例而且该实例易于外界访问,从而方便对实例个数的控 ...