小编ckv*_*ckv的帖子

类模板和模板类

类模板和模板类之间是否存在差异.如果是这样的话是什么?

c++ templates

3
推荐指数
1
解决办法
4177
查看次数

异步和等待需要澄清

我阅读了许多关于异步和等待的文章(主要来自msdn - 实际上这很好).还有一个问题困扰着我,我无法找到答案.

如果任务上有await语句,则控制权将返回给其调用者,直到在调用者中再次等待它为止.在这种情况下,这个耗时的任务是在一个单独的线程中执行的吗?如果没有,那么它是如何与主线程并行执行的.

async Task<string> GetContentsAsync()
{
    int sample = 0;
    HttpClient client = new HttpClient();
    Task<string> contents = client.GetStringAsync("http://www.microsoft.com");
            
    string data = await contents;
    return data;
}
Run Code Online (Sandbox Code Playgroud)

我希望我的问题很明确.

c# async-await

3
推荐指数
1
解决办法
102
查看次数

隐式和显式地访问Nullable类型的值

Nullable<int>隐式明确地访问a时有什么区别吗?

    Nullable<int> x = 10;
    Console.WriteLine("Value: {0}", x.Value);
    Console.WriteLine("Value: {0}", (int)x);
Run Code Online (Sandbox Code Playgroud)

两者都打印10,但我想知道是否有任何特定的偏好使用一个而不是另一个.

c#

3
推荐指数
1
解决办法
100
查看次数

CLR在.NET中完成的代码验证

我正在通过C#阅读CLR,并且作为IL和验证部分的一部分,提到了以下内容.

"在将IL编译为本机指令时,CLR执行称为Verification的过程.Verificaiton检查高级IL代码并确保代码执行的所有操作都是安全的.例如,验证检查每个方法是否使用正确数量的参数调用,传递给每个方法的每个参数都是正确的类型......"

我的问题如下:

  1. C#编译器本身检查函数是否以正确的参数数量和类型传递.那么这个验证意味着什么.
  2. 这是否意味着对象的运行时类型标识是作为此过程的一部分完成的,特别是is/as cast操作.

任何人都可以对此有所了解.

c#

3
推荐指数
1
解决办法
2351
查看次数

从C#中的short []数组中的数字创建逗号分隔字符串的最佳方法是什么?

我有一个short[] Numbers;

现在我想将数组中的数字转换为一个字符串,每个数组值用逗号分隔.我如何在C#中执行此操作?

short[] Numbers = {1, 2, 3, 4};
Run Code Online (Sandbox Code Playgroud)

我希望这个字符串"1,2,3,4"存储在数据库中.

PS:我在SO中检查了很多相同主题的问题,但没有完全匹配.因此我问这一个

.net c# arrays

3
推荐指数
1
解决办法
109
查看次数

[]运算符的运算符重载

为什么需要重载[]运算符?我从来没有遇到过必要的实际场景.有人可以告诉我一个实际的用例.

c++ operator-overloading

2
推荐指数
1
解决办法
413
查看次数

新数据类型,最多可包含100位数字

注意:这是一个面试问题,目前可能没有实际用例

问题是设计一个可以存储非常大的数字的类,说每个数字可以有100个数字.这个新类是一个像int这样的数据类型.

您将编写哪些不同类型的构造函数,重载和其他函数.

如何进一步扩展以支持真正大的浮点数.

如何将其提供给其他人,以便他们可以使用自己的附加功能重用相同的组件.

我的答案包括两种方法1.使用整数数组来存储每个说10位数2.使用字符串本身来存储数字并对单个数字执行操作.

什么是最好的方法?

c++

2
推荐指数
1
解决办法
3178
查看次数

使用Reflection创建对象:Activator.CreateInstance或Inovking构造函数C#

哪个是使用反射创建对象的更好方法?

获取构造函数的引用并调用构造函数来创建对象或

使用Activator.CreateInstance类的类.

从某种意义上说,更好的是我们为什么选择一种方法而不是另一种方法?如果是这样的话.

我只是在学习反思而且有这个问题.

.net

2
推荐指数
1
解决办法
94
查看次数

为什么这个三元操作失败了?

我有2条代码,如果条件和其他使用?运营商.

两者都在相同的函数范围内连续定义.但声明使用?运算符抛出编译错误?这段代码有问题.

if (IsCount)
       filterParameterOriginTime.Values = new[] { new DateTime(2013, 7, 1).ToString() };
else
       filterParameterOriginTime.Values = new[] { lastPollTime.ToString() };

// IsCount ? filterParameterOriginTime.Values = new[] { new DateTime(2013, 7, 1).ToString() } : filterParameterOriginTime.Values = new[] { lastPollTime.ToString() };
Run Code Online (Sandbox Code Playgroud)

c#

2
推荐指数
1
解决办法
86
查看次数

使用Foreach方法执行OR或AND操作

我有以下代码使用foreach迭代器.

foreach (var item in daysOfWeeksList)
            {
                daysOper |= item;
            }
Run Code Online (Sandbox Code Playgroud)

daysOfWeeksList是一个列表.我想OR列表中的每个项目并处理结果?

这几天是WeeksList的一个

List<int> daysOfWeeksList
Run Code Online (Sandbox Code Playgroud)

说我想做这样的事情.我想做的事情是OR操作.

list.ForEach( item =>
{
    item.DoSomething();
} );
Run Code Online (Sandbox Code Playgroud)

你会如何使用作为List集合的一部分提供的foreach方法来解决这个问题?我为2个操作数提供了大量示例,但没有针对单个操作数的示例.

c#

2
推荐指数
1
解决办法
112
查看次数

标签 统计

c# ×6

c++ ×3

.net ×2

arrays ×1

async-await ×1

operator-overloading ×1

templates ×1