草庐IT

default-lazy-init

全部标签

c++ - 如何确定key的 "(default)"值

我想知道如何使用C++获取注册表项的默认值。我已经尝试在RegQueryValueEx()函数的键参数中发送NULL或空字符串。尝试检查另一个key,我做对了。我只是无法获得默认值。该函数返回""而不是值。 最佳答案 “关键参数”是什么意思?您应该将NULL或""作为lpValueName传递范围。如果这对您不起作用,那么它就是您代码中的错误。发布您的代码,也许我们可以提供进一步的帮助。 关于c++-如何确定key的"(default)"值,我们在StackOverflow上找到一个类似

c# - 如何在 C# 中设置带有反射的私有(private) lazy<T> 以进行测试?

问题描述我们有一个相当大的系统,过去常常使用私有(private)setter将数据加载到属性中。为了使用测试特定场景,我曾经使用私有(private)setter在这些属性中写入数据。但是,由于系统越来越慢,并且正在加载不必要的东西,我们使用Lazy类将某些东西更改为延迟加载。但是,现在我无法再将数据写入这些属性,因此许多单元测试将不再运行。我们曾经拥有的要测试的对象:publicclassComplexClass{publicDateTimeDate{get;privateset;}publicComplexClass(){//Sampledata,eagerloadingdata

c# - Visual Studio - 继承控件的新 "default"属性值

我正在寻求有关在VisualStudio中为继承控件设置新的默认属性值的帮助:classNewCombo:System.Windows.Forms.ComboBox{publicNewCombo(){DropDownItems=50;}}问题是基类属性DropDownItems设置了一个不同值(不是50)的“默认”属性。因此,当我将控件拖到窗体上时,设计器文件会得到一个明确的mycontrol.DropDownItems=50;行。起初,这并不重要。但是,如果稍后我在构造函数中将继承的类更改为DropDownItems=45;,这不会影响任何表单上的任何控件,因为所有这些设计器文件仍然

c# - 存储库模式 : Implementation and lazy loading of model relationships

我有一个处理产品和产品类别的应用程序。对于其中的每一个,我都有使用POCO定义的模型。//Representsaproduct.classProduct{publicvirtualintID{get;set;}publicvirtualstringName{get;set;}publicvirtualProductCategoryCategory{get;set;}}//Representsaproductcategory.classProductCategory{publicvirtualintID{get;set;}publicvirtualstringName{get;set;}

c# - 使用 JsonConverter 的 Json.NET 自定义序列化 - 如何获得 "default"行为

我的类DataType有一个JsonConverter。当在Json中使用纯字符串作为DataType类型的属性值时,我想做一些特殊处理。在值是“完整”对象的情况下,我想进行“正常”反序列化。这是我的尝试publicoverrideobjectReadJson(JsonReaderreader,TypeobjectType,objectexistingValue,JsonSerializerserializer){if(reader.Value!=null&&reader.ValueType==typeof(string)){returnsomeSpecialDataTypeInsta

c# - Visual C# 2010 速成版 : Specify default access modifier for new classes?

每当我使用VisualStudio2010ExpressC#创建新类时,它都会创建没有访问修饰符的新类。10次中有9次我希望我的新类(class)公开。如何让VisualStudio默认使用“public”修饰符创建空类模板? 最佳答案 诀窍是创建一个名为Class的新项模板。然后,当您执行“添加”>“新建类”时,默认情况下将选择您的模板,而不是内置的类模板。(我不确定这种行为是否得到保证,但它可以在我的机器上运行(TM)。)创建模板:右键单击您的项目并选择“添加”>“类”。您可以接受默认名称(Class1)-这只是一个临时文件。修

c# - 带有过期时间的 Lazy<T>

我想在惰性对象上实现过期时间。过期冷却时间必须从第一次检索值开始。如果我们得到该值,并且过期时间已过,那么我们重新执行该函数并重置过期时间。我不熟悉扩展、部分关键字,我不知道最好的方法。谢谢编辑:到目前为止的代码:新编辑:新代码:publicclassLazyWithExpiration{privatevolatileboolexpired;privateTimeSpanexpirationTime;privateFuncfunc;privateLazylazyObject;publicLazyWithExpiration(Funcfunc,TimeSpanexpirationTime

c# - Settings.Default.<property> 始终返回默认值而不是持久存储(XML 文件)中的值

我最近用C#(.Net2.0)编写了一个DLL,其中包含一个需要IP地址的类。我的一位同事更改了类以从“.dll.config”(XML)文件中检索IP——这显然是由他创建的“应用程序设置”文件(Settings1.settings)自动生成的。这样做的好处是允许最终用户随意更改XML/config文件中的IP地址。不幸的是,当我从树中checkout他的代码并尝试编译(或使用)这个新代码时,任何调用这个DLL的应用程序只获得默认值,而不是文件中的值。调用配置文件的构造函数如下所示:publicclassform:System.Windows.Forms.Form{publicform

c# - default(CancellationToken) 如何有相应的 CancellationTokenSource

当我创建默认的CancellationToken时,我可以在调试器中看到CancellationToken有一个与其关联的CancellationTokenSource,它存储在私有(private)m_source字段:我想知道对于default关键字"willreturneachmemberofthestructinitializedtozeroornulldependingonwhethertheyarevalueorreferencetypes"的结构怎么可能呢?CancellationTokenSource是引用类型。CancellationToken确实有2个构造函数来设置

c# - 在 C# 中使用 var 和 default 进行声明

最近我看到有人大量使用var和default关键字来声明变量(以及每个声明),像这样:varemployee=default(Employee);//EmployeeisaclassvarerrorInfo=default(ErrorInfo);//ErrorInfoisstruct;Blankisdefaultvaluevarsalary=default(Double);varisManager=default(Boolean?);而不是使用:Employeeemployee=null;//EmployeeisaclassErrorInfoerrorInfo=Blank;//Erro