问题列表 - 第8587页

改变Paredit格式

在编程模式(如C)中使用paredit时,键入(当我尝试调用函数时将在paren之前插入一个空格,让我:

foo ()
Run Code Online (Sandbox Code Playgroud)

有没有办法在不改变paredit源的情况下禁用空间的插入?

emacs parentheses paredit

10
推荐指数
2
解决办法
1643
查看次数

说服开发人员学习TDD的最佳理由是什么?

让我先走出壁橱.我是TDD的信徒.我正在尝试尽可能多地练习测试驱动开发.

我工作的一些开发人员甚至拒绝尝试.我自己开始TDD试图向我的同行证明测试驱动开发是一个坏主意.论点是:

  • 为什么?到目前为止,我是非常成功的开发者
  • 这会让我慢下来.

什么是最好的专业TDD论证听到或使用过?


另请参阅: 单元测试的最佳原因是什么?

tdd unit-testing

7
推荐指数
3
解决办法
2400
查看次数

c ++不随机化

我不知道为什么我不能在这里得到我的变量的差值,帮助!

int main()
{
    srand(time(NULL));
    srand48(time(NULL));
    Packet* firstPacket = new Packet();
    firstPacket->packetSize =  randSize();
    firstPacket->dest = randDest();
    firstPacket->arrivalTime = myExp(lamb);
    Host[firstPacket->dest].Frame.push_back(firstPacket);   // adding first packet
    Host[firstPacket->dest].numOfPack++;
    calcFrameSize(Host[firstPacket->dest]);
    cout << Host[token].frameTVTime << " " << Host[token].frameSize
                    << " " << token << " " << curTime << endl;
}
Run Code Online (Sandbox Code Playgroud)

c++ random

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

iOS:如何使用Quartz测量字符串的宽度和高度?

在我提出问题之前,这是来自Apple的文档:如何使用Quartz确定字符串的宽度:

如果文本测量对您的应用程序很重要,则可以使用Quartz 2D函数计算它们.但是,您可能首先考虑使用ATSUI,其优势在于文本布局和测量.ATSUI有几个获取文本度量的函数.您不仅可以获得布局后文本指标,而且在极少数情况下需要它们,您可以获得布局前文本指标.与Quartz不同,您必须自己执行计算,ATSUI会为您计算测量值.例如,您可以通过调用ATSUI函数ATSUMeasureTextImage来获取文本的图像边界矩形.

如果您决定Quartz文本比ATSUI(或Cocoa)更适合您的需求,您可以按照以下步骤在Quartz绘制之前测量文本的宽度:

  1. 调用函数CGContextGetTextPosition以获取当前文本位置.
  2. 使用函数CGContextSetTextDrawingMode将文本绘制模式设置为kCGTextInvisible.
  3. 通过调用函数CGContextShowText绘制文本以在当前文本位置绘制文本.
  4. 通过调用函数CGContextGetTextPosition确定最终文本位置.
  5. 从结束位置减去起始位置以确定文本的宽度.

这是我的问题:

  1. 这真的是使用Core Graphics确定字符串宽度的最佳方法吗?它似乎很脆弱,因为我的文本与2D图形元素共存,我想对所有渲染使用相同的上下文.我希望有一些紧凑的方法,如:

    CGContextGetTextWidthAndHeight(context, text);
    
    Run Code Online (Sandbox Code Playgroud)
  2. 我读到ATSUI已经过时,将被Core Text取代.这是真的,如果是这样,是在iOS吗?

objective-c quartz-graphics core-text ios

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

为什么UnhandledExceptionEventArgs.Exception对象是一个对象而不是异常?

为什么是UnhandledExceptionEventArgs.ExceptionObject一个对象而不是一个Exception

我依附于AppDomain.UnhandledException.

我想UnhandledExceptionEventArgs.ExceptionObject加入Exception并插入它.

考虑到这一点,它会永远是空的吗?

MSDN文档不exatly有用.

获取未处理的异常对象.

.net exception-handling exception unhandled-exception

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

如何通过Ruby中的RELAX NG验证XML?

REXML模块似乎支持RELAX NG验证,但文档没有关于使用框架验证部分的任何真实信息.

您将如何使用RELAX NG模式验证XML文档?代码段最有帮助.TIA!

ruby xml relaxng

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

如何让内核在TCP套接字编程中选择范围(1024,5000)中的端口号

当我运行以下代码时:

struct   sockaddr_in sin;
int addrlen;   
addrlen=sizeof(sin);   
memset(&sin, 0, sizeof(sin));  
sin.sin_family = AF_INET;  
sin.sin_addr.s_addr=inet_addr("123.456.789.112");  
sin.sin_port=htons(0); // so that the kernel reserves a unique port for us  
sd_server = socket(PF_INET, SOCK_STREAM, 0);  
bind(sd_server, (struct sockaddr *) &sin, sizeof(sin));  
getsockname(sd_server,(struct sockaddr*)&sin,&addrlen);  
port=ntohs(sin.sin_port); 
printf("port number = %d\n",port);
Run Code Online (Sandbox Code Playgroud)

根据套接字,我必须得到1024到5000之间的端口号,但是我的端口号大约是30,000.
我该怎么办?

sockets kernel tcplistener tcpclient

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

转换void指针,取决于数据(C++)

基本上我想要做的是,根据一些变量,将void指针转换为不同的数据类型.例如('cast'变量只是为了得到我的观点):

void* ptr = some data;
int temp = some data;
int i = 0;

...

if(temp == 32)      cast = (uint32*)
else if(temp == 16) cast = (uint16*)
else                cast = (uint8*)

i = someArray[*((cast)ptr)];
Run Code Online (Sandbox Code Playgroud)

C++中有什么东西可以做这样的事情(因为你实际上不能将变量分配给(uint32*)或类似的东西)?如果不清楚我会道歉,任何帮助将不胜感激.

c++ casting void-pointers

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

关于错误发现的静态分析的好的介绍性文本?

我正在寻找关于错误发现的静态分析理论的好的介绍性文本.有什么建议?

language-agnostic static-analysis qa testing-strategies

6
推荐指数
0
解决办法
238
查看次数

将现有表上的 newid() 更改为 newsequentialid()

目前,我们有许多表在主键上使用 newid() 。这导致了大量的碎片。所以我想更改该列以使用 newsequentialid() 代替。

我认为现有数据仍将保持相当分散,但新数据的分散程度将减少。这意味着我也许应该等待一段时间,然后再将 PK 索引从非聚集更改为聚集。

我的问题是,有人有这样做的经验吗?有什么是我忽略的、应该注意的吗?

sql newid clustered-index newsequentialid

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