问题列表 - 第19342页

生产代码中的LRU实现

我有一些C++代码,我需要使用LRU技术实现缓存替换.
到目前为止,我知道实现LRU缓存替换的两种方法:

  1. 每次访问缓存数据时使用timeStamp,最后在更换时比较timeStamps.
  2. 使用一堆缓存的项目并在最近访问它们时将它们移动到顶部,因此最后底部将包含LRU Candidate.

那么,哪些更适合在生产代码中使用?
他们还有其他更好的方法吗?

c++ algorithm lru

28
推荐指数
3
解决办法
3万
查看次数

在.NET中使用'using'

在下面的例子中,返回pen是否会被销毁(处置)?

' VB'
Public Function GetPen() As System.Drawing.Pen
  Using pen As New System.Drawing.Pen(_Color, _Width)
    pen.DashStyle = _DashStyle
    Return pen
  End Using
End Function

// C#
public System.Drawing.Pen GetPen()
{
    using (System.Drawing.Pen pen = new System.Drawing.Pen(_Color, _Width)) 
    {
        pen.DashStyle = _DashStyle;
        return pen;
    }
}
Run Code Online (Sandbox Code Playgroud)

[编辑]

再精确一点...... Pen对象是通过引用发送给GetPen的调用者还是像结构一样'克隆'?我知道,这是一个类,但对于GDI对象,我无法确定...

将它被破坏(设置)的pen中创建GetPen()当外部方法将其废弃pen用得到GetPen()

.net using

5
推荐指数
3
解决办法
282
查看次数

如何在C#中显示指针地址?

自从我用C#编程以来,我没有做过任何指示 - 而且很久以前我的C++时代.我以为我应该刷新我的知识,因为这里有另一个问题,我只是在玩它们.我理解他们都没关系,但我无法弄清楚如何将指针的地址写入控制台......

char c = 'c';
char d = 'd';
char e = 'e';

unsafe
{
    char* cp = &d;
    //How do I write the pointer address to the console?
    *cp = 'f';
    cp = &e;
    //How do I write the pointer address to the console?
    *cp = 'g';
    cp = &c;
    //How do I write the pointer address to the console?
    *cp = 'h';        
}
Console.WriteLine("c:{0}", c); //should display "c:h";
Console.WriteLine("d:{0}", d); //should display "d:f";
Console.WriteLine("e:{0}", e); //should …
Run Code Online (Sandbox Code Playgroud)

c# pointers unsafe

15
推荐指数
1
解决办法
8027
查看次数

如何在autoconf configure script/makefile中添加指向库的链接

我是一个autotools newb,我很难弄清楚如何轻松地将特定库链接到一个配置的目标.

我有一个源代码包,我想以通常的方式构建:./ configure && make && make install

不幸的是,其中一个cpps缺少对另一个库的引用.手动编译(调整命令行)有效.但我宁愿"修补"编译脚本.编辑链接参考的标准位置在哪里?

 undefined reference to `boost::system::get_system_category()
Run Code Online (Sandbox Code Playgroud)

那是我的错误信息btw.

autoconf gcc boost autotools

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

SQL Server Integration Services - 向SQL语句添加参数

我有一个SQL Server Integration Services项目,它使用带有SQL命令的OLE DB源作为数据访问模式查询SQL Server 2005数据库.

我正在尝试参数化我的SQL查询,但语法不是@PARAM,当我尝试使用时?并单击参数我收到一条错误,指出"无法从SQL命令中提取参数".

我正在做类似的事情

SELECT * FROM [dbo].[TabledValuedFunction] (?)
Run Code Online (Sandbox Code Playgroud)

sql-server ssis

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

我在哪里可以获得弹簧源代码?

嗯,想找spring框架的源码下载,可是找不到!

有人可以帮我吗?

顺便说一句,使用更多商业版本的 spring 到底有什么好处?

java spring

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

C中的参考文献

可能重复:
在C下通过引用传递指针参数?

参考变量是C++概念吗?它们是否可用于C?如果在C中可用,为什么我的代码会出现编译错误?

#include <stdio.h>
#include <stdlib.h>

int main()
{
  int a = 10;
  int b = 20;
  int &c = a;
  int &d = b;
  return 0;
}
Run Code Online (Sandbox Code Playgroud)

输出:

bash-3.2$ gcc test.c
test.c: In function `main':
test.c:12: error: parse error before '&' token
Run Code Online (Sandbox Code Playgroud)

为什么?

c c++ reference

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

是否有人知道"抽象层"/"间接层"引用出现在哪里?

引用如下:

计算机科学中没有任何问题无法通过向其添加另一层抽象来解决

(来自http://blogs.oracle.com/fcmartin/2009/01/pardon_my_dust.html的措辞复制)

有许多变化,但我一直无法找到原创者.因为我非常喜欢用舌头沾上这句话和相当多的真相,所以我很想知道是否有人知道这可能来自哪里.

quotes computer-science

20
推荐指数
2
解决办法
5714
查看次数

签入源代码管理之前的程序?

我开始在工作中获得声誉,因为" 打破了构建的人 ".

问题不在于我正在编写狡猾的代码,但在检查我的修复程序回到源代码控制时,一切都出错了.

我经常做愚蠢的事情,比如:

  • 忘记添加新文件
  • 意外地检查代码中的半修复错误以及另一个错误修复
  • 在签入之前忘记将文件保存在VS中

我需要开发一些习惯/工具来阻止这种情况.

你经常做什么来确保你签到的代码是正确的,是什么需要进入?

编辑

我忘了提到在这个地方事情会变得非常混乱.在任何时候,我经常有两三件事在同一个代码库中工作.当我办理登机手续时,我只想检查其中一件事.

version-control

4
推荐指数
1
解决办法
408
查看次数

使用超过默认按钮从PowerShell调用Messagebox.Show()?

我试图用PowerShell显示一个消息框,带有yes和no按钮.

我可以使用OK按钮显示一个消息框:

[system.windows.forms.messagebox]::show("Hello, world!")
Run Code Online (Sandbox Code Playgroud)

我可以使用我想要的按钮创建一个变量$按钮:

$buttons=[system.windows.forms.messageboxbuttons].yesno
Run Code Online (Sandbox Code Playgroud)

我可以看到Show()静态方法被重载,其中一个选项是给出三个参数:

Show(String,String,MessageBoxButtons)显示带有指定文本,标题和按钮的消息框.

那么自然(?)我决定这样称呼:

[system.windows.forms.messagebox]::show("Are you sure?","",$buttons)
Run Code Online (Sandbox Code Playgroud)

这会导致错误:

找不到"Show"的重载和参数count:"3".

但是"Show"有一个超载,接受三个参数!

我究竟做错了什么?

(并且有人可以告诉我为什么在PowerShell中调用方法通常使用点语法:object.method(),但MessageBox类需要"::"?这令人困惑.)

powershell winforms

4
推荐指数
2
解决办法
2万
查看次数