问题列表 - 第14650页

泛型类中的模糊/冲突构造函数

我有一个通用类:

public class BaseFieldValue<T>
{
    public BaseFieldValue()
    {
        //...
    }

    public BaseFieldValue(string value)
    {
        //...
    }

    public BaseFieldValue(T value)
    {
        //...
    }
}
Run Code Online (Sandbox Code Playgroud)

精细.除了...

var myValue = new BaseFieldValue<string>("hello");
Run Code Online (Sandbox Code Playgroud)

哎呀.调用不需要的构造函数.有很多方法可以解决这个问题.什么是最好的解决方案?

c# generics

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

打印ASCII艺术钻石

这是我在学校编程时遇到的一个家庭作业问题,我有点迷茫,所以请帮忙.这是一个问题:

编写一个应用程序,在屏幕上打印一个星号(*)菱形.钻石中的线条数由用户给出.例如,如果用户请求具有7行的菱形,则将显示以下内容.

这是我到目前为止:

{
  int nlines;
  int nsp;
  cout << "enter the number of lines (must be more then one)" << endl;
  cin >> nlines;
  while((nlines)<=0)
  {
    cout << "enter the number of lines (must be more then one)" << endl;
    cin >> nlines;
  }
  nsp=(nlines - 1)/2;
  for(int currspace = 1; currspace <= nsp; currspace++)
  {
    cout << " ";
  }
  cout << "*" << endl;
  for( int currentline = 0; currentline < nlines; currentline++)
  {
    for( int currentaster …
Run Code Online (Sandbox Code Playgroud)

c++

6
推荐指数
4
解决办法
6965
查看次数

如何编码减少闪烁?需要你的代码帮助.win32 VC++闪烁

我试图用鼠标movemont将位图缩放到鼠标光标位置.但是有闪烁的问题.

我读过关于双缓冲以减少闪烁,但我不知道如何...这会导致极度闪烁.我已经阅读了关于双缓冲以减少闪烁,但我不确定如何在此示例中实现它.你能帮忙吗?谢谢

这是下面的代码.谢谢你的帮助!

// screen blinks.trying to use double buffer so solve this problem.
#include <windows.h>
HDC bufferDC = NULL;
HDC           hdc=GetWindowDC(NULL) ;
HDC hammerDC = NULL; 
HBITMAP hammer1BMP = NULL;
HBITMAP bufferBMP = NULL;
POINT cursorpoint;

LRESULT CALLBACK WndProc (HWND, UINT, WPARAM, LPARAM) ;

int WINAPI WinMain (HINSTANCE hInstance, HINSTANCE hPrevInstance,
                    PSTR szCmdLine, int iCmdShow)
{
     static TCHAR szAppName[] = TEXT ("DigClock") ;
     HWND         hwnd ;
     MSG          msg ;
     WNDCLASS     wndclass ;

     wndclass.style         = CS_HREDRAW | CS_VREDRAW ;
     wndclass.lpfnWndProc …
Run Code Online (Sandbox Code Playgroud)

winapi flicker visual-c++

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

这个无锁的.NET队列线程安全吗?

我的问题是,下面包含的类对于单读者单编写器队列类线程安全吗?这种队列称为无锁,即使队列已填满也会阻塞.数据结构的灵感来自Marc Gravell在StackOverflow 上实现的阻塞队列.

结构的要点是允许单个线程将数据写入缓冲区,而另一个线程则读取数据.所有这些都需要尽快发生.

Herb Sutter在DDJ文章中描述了类似的数据结构,但实现是在C++中.另一个区别是我使用了一个vanilla链表,我使用了一个链表的数组.

我不是仅仅包含一段代码,而是将所有内容与允许的开源许可证(MIT许可证1.0)一起包含,以防任何人发现它有用,并且想要使用它(原样或修改).

这与Stack Overflow上有关如何创建阻塞并发队列的其他问题有关(请参阅在.NET中创建blockinq队列在.NET中创建线程安全阻塞队列).

这是代码:

using System;
using System.Collections.Generic;
using System.Threading;
using System.Diagnostics;

namespace CollectionSandbox
{
    /// This is a single reader / singler writer buffered queue implemented
    /// with (almost) no locks. This implementation will block only if filled 
    /// up. The implementation is a linked-list of arrays.
    /// It was inspired by the desire to create a non-blocking version 
    /// of the …
Run Code Online (Sandbox Code Playgroud)

.net c# algorithm multithreading data-structures

6
推荐指数
1
解决办法
7634
查看次数

自定义类的STL优先级队列

我在使用优先级队列来识别它应该排序的参数时遇到了很多麻烦.我在我的自定义类中重载了less运算符但它似乎没有使用它.这是相关的代码:

Node.h

class Node
{   
public:
    Node(...);
    ~Node();
    bool operator<(Node &aNode);
...
}
Run Code Online (Sandbox Code Playgroud)

Node.cpp

#include "Node.h"
bool Node::operator<(Node &aNode)
{
    return (this->getTotalCost() < aNode.getTotalCost());
}
Run Code Online (Sandbox Code Playgroud)

getTotalCost()返回一个int

main.cpp中

priority_queue<Node*, vector<Node*>,less<vector<Node*>::value_type> > nodesToCheck;
Run Code Online (Sandbox Code Playgroud)

我错过了什么和/或做错了什么?

c++ stl priority-queue comparator

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

将单元测试添加到遗留代码

事实上,您是否曾将旧单元测试添加到遗留代码中?代码有多复杂,存根和模拟一切有多难?最终结果值得吗?

unit-testing legacy-code

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

如何使用DATEDIFF返回年,月和日?

如何使用DATEDIFF返回年份,月份和天中两个日期之间的差SQL Server 2005

DATEDIFF (date , date)
Run Code Online (Sandbox Code Playgroud)

结果如何:2年3个月10天

有人能完成t-sql吗?

ALTER FUNCTION [dbo].[gatYMD](@dstart VARCHAR(50), @dend VARCHAR(50))
RETURNS VARCHAR(50) AS
BEGIN
    DECLARE @yy INT
    DECLARE @mm INT
    DECLARE @getmm INT
    DECLARE @dd INT

    SET @yy = DATEDIFF(yy, @dstart, @dend)
    SET @mm = DATEDIFF(mm, @dstart, @dend)
    SET @dd = DATEDIFF(dd, @dstart, @dend)
    SET @getmm = ABS(DATEDIFF(mm, DATEADD(yy, @yy, @dstart), @dend))

    RETURN (
        Convert(varchar(10),@yy) + 'year' + Convert(varchar(10),@mm) + 'month'  + Convert(varchar(10),@dd) + 'day'
        )
END
Run Code Online (Sandbox Code Playgroud)

sql sql-server sql-server-2005

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

列出所有SVN存储库

在subversion中是否有一个命令列出在特定主机上注册的所有可用存储库?例如,在clearcase中,"cleartool lsvob"将为我提供给定区域中所有版本化数据库的列表.我在颠覆中找不到类似的东西.

谢谢

svn repository listings

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

何时使用依赖注入?什么时候不?

据我所知,这里的权衡取决于复杂性.也许?

似乎(总是?)使用依赖注入更加分离,但对于没有它的人来说更简单(对许多人来说).

根据我对生活中所有事物的理解,没有什么是绝对的,而且每件事都有时间和地点.我试图理解这里的权衡.

oop dependency-injection

11
推荐指数
2
解决办法
3608
查看次数

为什么Python中的列表参数与ByRef一样?

这可能适用于大多数语言,但我不确定.我是Python的初学者,一直致力于C#和VB中的列表副本.但是在Python中,只要我将列表作为参数传递并通过使用"for i in range"进行枚举,然后更改list参数的值,输入值实际上会更改原始列表.我认为Python应该默认按值传递参数,这样一旦函数完成,我仍然会在调用函数之前得到原始值.我错过了什么?谢谢!

python reference object-reference argument-passing

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