首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

C++核心准则编译边学-F.20 输出结果时更应该使用返回值而不是输出参数

F.20: For "out" output values, prefer return values to output parameters(输出结果时更应该使用返回值而不是输出参数) Reason...返回值本身可以说明用途,而引用类型可以是输入/输出参数也有可能只是输出参数,容易被误用。...译者注:POD是Plain old data structure的简称,是C++语言的标准中定义的一类数据结构,可以简单地理解只包含单纯数据类型的结构体。...// OK void val(int&); // Bad: Is val reading its argument 译者注:示例代码说明的是POD使用引用传递输出值,而小数据者应该直接使用返回值...警告返回常数值的状况。修改方法:去掉常量修饰,返回一个非常量。

1.4K30
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    easyUI datagrid避免二次渲染

    easyui datagrid加载数据只有两种方式:一种是ajax加载目标url返回的json数据;另一种是加载js对象,也就是使用loadDate方法。...: DataGrid" idField="itemid" url="datagrid_data2...param将代替默认查询参数,注意的是该方法只适用于url方式. reload param 刷新当前页数据,与load方法不同的时候reload方法刷新当前页数据,而load方法会跳到第一页然后刷新....使用load和reload函数去动态加载数据,而不是选择再次渲染组件,而再次渲染组件的目的仅仅是为了设置url,这得不偿失,url的设置可以通过options方法获取到组件实例的opts,然后在给opts.url...重新赋值即可; 用class方式注册组件,一般只将属性写在DOM里,而事件通常还是用javascipt调用datagrid构造函数注册,这个过程中就发生了二次请求:第一次是class方式实例化的时候,第二次是

    1K40

    Asp.Net就业课堂之模板控件

    通过使用模板,DataList 对显示的数据外观提供了比 DataGrid 更多的控制。...但是,使用模板通常比使用 DataGrid 的列类型需要更多的开发时间 DataList 还支持数据的内联编辑,但是实现起来需要的工作量比 DataGrid 多。...遗憾的是,在 DataList 中提供分页和排序支持不是一件简单的事。 DataList 比 DataGrid 提供了更好的性能,从而弥补了这些缺少的内置功能。...当控件在 ASP.NET 网页中运行时,控件基础结构呈现模板的内容,而不是控件的默认 HTML。其实说白了它们就相当于我们在vb.net中常用来显示数据的DataGridView控件 2....解析: 1.虽然它们都可以通过模板显示数据,但是DataList和Reperter必须使用模板,而DataGrid还允许 通过 TemplateColumn而只使用模板来显示一列; 2.数据源属性有好几种

    6110

    常见 Datagrid 错误

    可以使用 Datagrid 创建列表数据而没有使用 我知道您不会再使用如下所示的代码,但 ASP.NET 领域中许多守旧的用户仍在继续使用它们: Response.Write("") While...CType,将会把返回值由 Object 类型强制转换成 TextBox 类型,以访问 .Text 属性。...可以(或应该)使用分页而没有使用 用户未必希望在单个页面上滚动查看成千上万条记录。请确保您的应用程序设计合理,能够处理可能会返回大量记录的情况。...在 Scott Mitchell 的文章 Creating a Pageable, Sortable DataGrid 中可以找到更多的信息。...然而,如果 Datagrid 应用程序中不是一定需要动态创建控件,请避免使用该技术,以免遇到麻烦。尽管可能创建动态 Datagrid,但它们会引发各种事件,这通常都会令人头疼。

    2.4K20

    OEA 中 WPF 树型表格虚拟化设计方案

    而 ContainerCount 表示已经生成的容器的个数,对于 UnrealizedItemBlock 来说,永远返回 0; 而 RealizedItemBlock 返回它的 ItemCount 表示容器数就是项数...那么,在这样层次要求下,要如何实现只使用一个滚动条的虚拟化呢?还好,WPF 自带的 DataGrid 也带有行列虚拟化的功能,我们可以先看一下 DataGrid 是如何实现的。...VirtualizingStackPanel 为了提高性能,它是根据 Item (项数)而不是 Pixel (象素)来计算滚动条信息。...而表格行 TreeGridRow 类则继承自 HeaderedItemsControl 类型,它的总行高应该是本行的高度加上所有子行的高度,也不是一个定值,所以现在虚拟化功能也被关闭。...而当行虚拟化关闭后,由于列虚拟化实现的机制依赖最外层的 ScrollViewer,所以也被关闭。也就是说,暂时不能只打开列虚拟化,而不打开行虚拟化。

    2.7K70

    精通 WPF UI Virtualization

    新的 TreeGrid 控件实现了很多新的功能,(之后会写一篇文章说明),但是最后遗留了一个问题:由于使用它替换了原来的 DataGrid,而 DataGrid 默认是支持 UI Virtualization...解决方案      其实,相关的 UIV 知识点有那么几个: WPF 中的 VirtualizingStackPanel 只支持一层数据的 UIV。...同时,由子元素(也就是 VirtualizingStackPanel)需要实现 IScollInfo 并返回 Scroll 相关信息,而 ScollViewer 则只是一个简单的视窗;这样,子元素就可以在内部实现...Visuals 的数量由 1W8 降到了 3000,当行数更多时,也就保持初始生成 3000 个左右。拖动起来也明显地感觉到流畅了许多。 大功告成!...之前系统中用到的 DataGrid 控件,一旦数据被分组之后,性能异常低下。

    2.4K90

    数据库的应用

    作者:飞刀 我们必须得了解一下DataReader,DataSet和DataGrid控件,DataGrid是显示控件,大家自已去看它相关的应用,我们在这里不哆嗦,DataReader和DataSet都可以用来储存数据内容...,不过DataReader只能储存查询的结果,DataSet就相对来说复杂多了,他的功能很强大,我们一步步来讲,我们只讲其关于储存数据库的功能,呵呵,为了和DataReader的讲解嘛....这一些和数据库没有什么两样,但是他不是数据库(怎么越说越糊涂),我们可以先在DataSet中操作数据(添加,删除,更新),最后再一并提交到数据库去操作。...而且DataSet中的数据不光可以来自于数据库,还可以是XML以及其它的数据,甚至用户的输入也能直接存入DataSet 我们这里只谈DataSet对于数据的作用,呵呵,而且还只是数据的显示。...另外我们可以向一个DataSet中加入多个表的查询结果,这些结果的Connection都可以不同,这个实现起来很简单,大家可以自已动手去做。

    1K20

    领悟Web设计模式

    = dataSet; dataGrid.DataBind(); } } image.png 执行结果如图所示,程序将根据下拉列表框选择的值绑定DataGrid,非常典型的一个WebForm架构,体现出...一个优秀的设计需要每一个模块,每一种方法只专注于做一件事,这样的结构才清晰,易修改,毕竟项目的需求总是在不断变更的,“唯一不变的就是变化本身”,好的程序一定要为变化作出准备,避免“牵一发而动全身”,所以一定要想办法解决上述问题...WebForm MVC 模式主要关注Model与View之间的分离,而对于Controller的关注较少(在上面的MVC模式中我们仅仅只把Model和Controller分离开,并未对Controller进行更多的处理...CommandFactory的Make方法来处理接收到的参数并返回一个Command对象,紧接着它又会调用该Command对象的Execute方法把处理后参数提交到具体处理的页面。...也许您只是想保存部分的内容而不是想保存整个页面,那么我们回到MVC模式中的SQLHelper.cs,我对它进行了少许修改: public static DataSet GetPortal() { DataSet

    1.2K50

    easyUI组件datagrid的二次封装

    * fnName:函数名称,必填; * fn:函数实体,必填; * isGlobal:函数作用域,选填,默认是局部变量,如果需要全局访问可以设置成true; * 成功添加返回...true,失败添加返回false * 2016-4-16进行更新: * !!...//option:有三种类型的值:1.字符串:返回立即执行函数执行后的结果;2.数组:对grid进行初始化,最简单的一种grid使用方式;3.对象:可以是对grid进行初始化,也可以是获取需要的执行函数...defaultOption.columns = option.columns; /** * 工具栏,option.toolbar * 不是数组...如果是,不用写columns,就可以直接返回, // 注:返回的事件获取方法是,返回对象obj,那么调用函数可以这样获取obj.handler下的所有函数就是你需要的函数。

    2.3K30

    ASP.NET虚拟主机的重大安全隐患

    由于我们的目的不是讨论Codebehind技术,所以就不在对此多加讨论了。 在这篇文章里,我们只介绍几个主要的类及其关键方法的用法,详细程序请查看附带的源代码。...除非另外指定,StreamReader的默认编码为 UTF-8,而不是当前系统的 ANSI 代码页。UTF-8 可以正确处理 Unicode 字符并在操作系统的本地化版本上提供一致的结果。...代码访问安全性允许根据代码的来源和代码的标识等属性将代码设置为不同级别的信任代码,同时还详细定义了不同级别的对代码的信任,从而可以详细的对代码设置各自的权限而不是将最大权限赋给所有的代码。...您只应该请求代码需要的那些权限,而不应请求更多权限。...例如,如果代码只根据向它传递的输入来计算结果而不使用任何资源,则不必请求权限。

    1.8K20

    对asp.net响应事件的试验

    1、可否把bind独立出来,在page_load中只是初次时bind,以后都在具体事件的处理中bind    实验:        page_load中,只作datagrid的构造,绑定只在第一次作,用...而按钮事件处理中,绑定用bindit2,对ds删除首行    结果,初次显示全部,按钮后没有首行,说明可以。...事件根本不能到达 3、两次绑定的影响    例1中,page_load每次都绑定,按钮按下看能否改变    结果,再次绑定是有效的 4、用page.databind能否起到同样效果    能 5、用户控件中的...datagrid的父控件是什么    CentnGrid_ascx 6、在add事件中对ds修改,看能否反映到grid    可以影响到显示 7、用page.databind可否影响到用户控件    可以...8、怎样将ds修改反应到用户控件中的datagrid    用属性的方式来写    set      {      }

    74680

    jQuery EasyUI Datagrid 加载慢解决方法

    慢在哪些方面 以目前对Datagrid的了解程度去看待性能问题,主要有以下几点: 加载大数据量时比较慢(不考虑服务端返回数据的时间),这点尤其体现在IE浏览器里面; 大数据量时,加载后,操作很不流畅,勾选慢...默认视图没有使用html5技术,调用innerHTML的节点也并非table节点(是div),而href,src等转化为绝对路径并没有什么影响。...false,2000条数据勾选一条记录的测试情况): 浏览器 执行时间 浏览器 执行时间 原版 IE9 600ms chrome 60ms 选择器优化 IE9 560ms chrome 60ms 从上面的结果可以看出...,在这种测试条件下,我们提高的效率并不大,IE9下提高的效率尽管有所提高,但是还是很不理想,而chrome下性能基本一样。...优化方案二:实时记录优化法 既然慢在DOM结构巨大时,jQuery选择器的搜索效率不是很好(特别是在IE下)。如果我们每次操作都记录下勾选的tr,那么就完全可以绕开选择器。

    2.3K20

    【我们一起写框架】MVVM的WPF框架(四)—DataGrid

    那是因为,我们编写的是框架,是使用MVVM的概念编写框架,而并不是要完美的实现MVVM设计。 两者有什么区别呢?区别就是前者是实战,后者只是个理念。...在实战架构中,并不是UI的东西都一定要放在UI层写,逻辑的东西放在逻辑层写的。因为,架构的目的是让程序员更好的写代码,而不是让代码死死的固定在某一层。...因为,架构师是设计模式的使用者,而不是被使用者。...其实不然,现实中我们要处理的逻辑,并不是简单的对象属性一对一绑定就能处理解决的。 我们需要做很多操作,其中也包括UI操作。而数据控件就是用来应对这种复杂的UI操作的。...而这个问题,并不是一个弹出框那么简单的UI越界问题,因为它包含了更多复杂的业务逻辑。 数据控件解决这个烦恼。

    1.2K20

    Jmix 2.1 发布

    该组件的工作尚未完成,我们将在下一个版本中提供更多功能。 动态属性 动态属性 扩展组件支持在运行时为实体定义新的属性,而无需修改数据库结构和重启应用程序。这些动态属性可以拆分为不同的类别。...电子书具有“可用格式”和“文件大小”属性,而纸质书具有“封面类型”、“重量”和“尺寸”属性。...系统将为 Book 实体的数据自动创建索引(并在每次变动时重新索引),用户能使用索引进行全文搜索: ▲搜索组件 搜索结果会根据当前用户的数据访问权限自动过滤,消除任何信息泄露的风险。...genericFilter 组件在运行时是完全可自定义的,并提供高级条件,但可能不是特别容易使用。而 propertyFilter 对用户来说很简单,但需要开发人员事先配置。...值的一提的是,这三个过滤功能可以在同一视图和数据加载器上一起使用,而不会发生任何冲突。所有过滤器的条件都将使用逻辑 AND 运算符进行简单组合。

    26010

    基类、接口的应用——表单控件:一次添加、修改一条记录,一次修改多条记录。(上)

    针对的框架: 目前只考虑 asp.net1.1  (webform)。 先贴个图片,就是这样的表单 ?...如果用基类的话就要在控件的“共有”基类里面加一个方法,但是这个“共有”的基类也不是太好找,再有呢在.net框架里加点东东好像也不是太容易(或者是我学艺不精)。 我想到的解决方法呢就是使用接口。...Me.DataTextField = "txt"         Me.Font.Size = FontUnit.Point()     End Sub #End Region     '返回选择的...控件(字段)再多我也不怕了,代码行数不会跟随字段的增加而增加。 3、开始保存数据(单条数据)。 在这里呢建议先看一下我以前发的一个帖子。...这里需要DataGrid来帮忙了。 拖一个DataGrid出来,然后做一下设置,加几个模版类。

    1.1K50
    领券