问题列表 - 第13743页

如何遍历std :: list <MyClass*>并从迭代器获取该类中的方法?

如果我有这个清单,

typedef std::list<MyClass *> listMyClass;
Run Code Online (Sandbox Code Playgroud)

我如何迭代它们并获得该类中的方法?

这是我尝试过的,但事实并非如此:( MyClass :: PrintMeOut()是一个公共方法)

for(
    listMyClass::iterator listMyClassIter = listMyClass.begin();
    listMyClassIter != listMyClass.end();
    listMyClassIter ++)
{
    listMyClassIter->PrintMeOut();  
}     
Run Code Online (Sandbox Code Playgroud)

c++

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

为什么始终对最小的代码单元进行单元测试是最佳实践?我发现那些测试永远不会在重构中存活下来

多年来,我一直是测试驱动开发的实践者,总体而言我很满意.我还不了解的一个部分就是你应该总是对"最小可能的单位"进行单元测试.

单元测试的部分想法似乎是让你自信地重构,你不会破坏任何东西.但是,我发现测试非常小的代码片段的测试几乎不会在这些重构中存活下来,代码总是会发生很大变化,以至于小单元测试会被丢弃并且新的测试被编写.这些测试涵盖了似乎在这里提供最大价值的更大功能,因为更高级别的接口不会经常变化.

对于琐碎的重构,比如移动方法,这些只是通过IDE完成的,因为我使用的是静态类型语言,所以我从未遇到IDE无法完美地进行重构的情况.

其他人有相似或相反的经历吗?

testing unit-testing

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

moq - 如果类吞下异常,则尚未调用如何验证方法

我试图使用Moq测试一个相当复杂的类,并遇到了问题.

我试图验证一个方法不会被调用,通常这可以通过设置MockBehavior.Strict来做到,但是这里该类有自己的错误报告机制,因此它吞下了Moq抛出的异常.

.Verify测试结束时的所有方法也都很好,这真的很奇怪.这是Moq中的一个错误,是否有任何变通方法?

我也尝试在这个方法上设置回调并在其中执行Assert.Fail,但是当它被吞下时,测试框架(VS 2008内置测试)也没有得到通知...

我正在使用Moq 2.6.1014.1.(没时间升级到moq 3)

c# unit-testing moq

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

JavaScript方法链接挑战

(这个问题并不仅限于语言,所以请随意提交其他语言的解决方案.)

我只是想知道是否可以在JavaScript中编写类似的内容:

// Wait 3 seconds and then say our message in an alert box
wait(3).then(function(){alert("Hello World!");});
Run Code Online (Sandbox Code Playgroud)

传统的方式是写作

// Wait 3 seconds and then say our message in an alert box
setTimeout(function(){alert("Hello World!");}, 3000);
Run Code Online (Sandbox Code Playgroud)

对不起,如果这是一个菜鸟问题:p

javascript method-chaining

8
推荐指数
2
解决办法
2472
查看次数

客户端 - 服务器程序,问题从客户端发送消息到服务器,反之亦然

我有一个小程序,可以从服务器和客户端发送和接收数据,反之亦然.一切正常,但我看不到双方收到的消息,它总是0字节.它没有给出任何编译错误但是没有按照我想要的方式工作.你能不能看看我做错了什么?谢谢

//客户

#include <stdio.h>
#include <unistd.h> 
#include <stdlib.h> 
#include <string.h>
#include <time.h>
#include <errno.h>
#include <sys/types.h>
#include <sys/socket.h>
#include <netdb.h>
#include <arpa/inet.h>

int main(int argc, char* argv[])
{
    int sockfd;

    struct addrinfo hints, *servinfo, *p;
    int rv;
    int numbytes;
    char* hostname = "localhost";
    char* server = "localhost";

    memset(&hints, 0, sizeof(hints));
    hints.ai_family = AF_INET;
    hints.ai_socktype = SOCK_STREAM;
    if ((rv = getaddrinfo(hostname, "5000", &hints, &servinfo)) != 0)
    {
        fprintf(stderr, "getaddrinfo: %s\n", gai_strerror(rv));
        return 0;
    }


    // loop through all the results and …
Run Code Online (Sandbox Code Playgroud)

c c++ sockets network-programming

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

C#Nullable <DateTime>到字符串

我有一个DateTime?变量,有时值是null,我怎么能在值为时返回空字符串"",null或者DateTime在没有时返回值null

c# datetime

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

Windows服务下的进程截图

我们必须从Windows服务运行一个进程并从中获取屏幕截图.

我们尝试了BitBlt和PrintWindow Win32调用,但都给出了空白(黑色)位图.

如果我们从普通用户进程运行我们的代码,它就可以正常运行.

这有可能吗?或者可以尝试另一种方法吗?

我们尝试的事情:

  1. 作为本地系统运行的Windows服务,以本地系统运行进程 - >屏幕截图失败
  2. 以管理员身份运行的Windows服务以管理员身份运行 - >屏幕截图失败.
  3. 以用户XYZ身份运行的Windows应用程序以XYZ运行流程 - >截图适用于BitBlt或PrintWindow.
  4. 尝试从本地系统检查"允许服务与桌面交互"

我们还注意到PrintWindow对我们的情况更好,如果窗口在另一个窗口后面,它可以工作.

对于其他要求,父进程和子进程必须位于同一用户下.我们无法真正使用从一个进程到另一个进程的模拟.

.net c# windows-services screenshot process

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

Struts 2文件上传拦截器配置问题

尝试在我的应用程序中配置Struts 2文件上传拦截器时遇到两个问题.我想更改参数maximumSize(默认值为2 MB,我需要它为5 MB)和消息资源struts.messages.error.file.too.large(应用程序区域设置为pt_BR,因此消息是葡萄牙语,而不是英语).

应用程序当前配置如下:

struts.properties

struts.locale=pt_BR 
struts.custom.i18n.resources=MessageResources
Run Code Online (Sandbox Code Playgroud)

在struts.xml

<package name="default" namespace="/" extends="struts-default">
    <interceptors>
        <interceptor name="login" class="br.com.probank.interceptor.LoginInterceptor"/>
        <interceptor-stack name="defaultLoginStack">
            <interceptor-ref name="login" />
            <interceptor-ref name="defaultStack"/>
        </interceptor-stack>
    </interceptors>

    <default-interceptor-ref name="defaultLoginStack" />
    ...
</package>

...
<package name="proposta" namespace="/proposta" extends="default">
    <action name="salvarAnexoProposta" method="salvarAnexoProposta" class="br.com.probank.action.AnexoPropostaAction">
        <interceptor-ref name="defaultLoginStack">
            <param name="fileUpload.maximumSize">5242880</param>
        </interceptor-ref>
        <result name="success">/jsp/listagemAnexosPropostaForm.jsp</result>
        <result name="input">/jsp/crudAnexoPropostaForm.jsp</result>
        <result name="error">/jsp/error.jsp</result>
        <result name="redirect" type="redirect">${redirectLink}</result>
    </action>
</package>
Run Code Online (Sandbox Code Playgroud)

MessageResources.properties

...
struts.messages.error.file.too.large=O tamanho do arquivo...
Run Code Online (Sandbox Code Playgroud)

我的Action实现和我的JSP代码没有什么特别之处.他们按照http://struts.apache.org/2.1.6/docs/file-upload-interceptor.html上的示例进行操作.当我尝试上传超过5 MB的文件时,应用程序会显示消息"请求被拒绝,因为其大小(6229458)超过了配置的最大值(2097152)" - 默认的文件上载消息,其默认值为maximumSize.

我尝试将消息资源struts.messages.error.file.too.large放在struts-messages.properties中,但之后消息没有改变.配置文件上传拦截器的正确方法是什么?我正在使用Struts 2 2.1.7.提前致谢.

configuration struts2 file-upload interceptor interceptorstack

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

<script runat ="server">与代码隐藏文件

<script runat='server'></script>在代码隐藏中,c#代码之间是否有任何缓存/性能/显着差异?

c# asp.net code-behind runatserver

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

在Haskell中编写一个Haskell解释器

一个经典的编程练习是在Lisp/Scheme中编写一个Lisp/Scheme解释器.可以利用完整语言的强大功能为该语言的子集生成解释器.

Haskell有类似的练习吗?我想使用Haskell作为引擎来实现Haskell的子集.当然可以做到,但有没有可供查看的在线资源?


这是背景故事.

我正在探索使用Haskell作为一种语言来探索我正在教授的离散结构课程中的一些概念的想法.在这个学期,我已经选择了Miranda,这是一种激发Haskell的小语言.米兰达做了我想做的事情的90%左右,但哈斯克尔做了大约2000%.:)

所以我的想法是创建一种具有Haskell功能的语言,我希望并禁止其他所有功能.随着学生的进步,我可以在掌握了基础知识后有选择地"开启"各种功能.

教学"语言水平"已成功用于教授JavaScheme.通过限制他们可以做的事情,你可以防止他们在掌握你想要教授的语法和概念的同时在脚中射击.并且您可以提供更好的错误消息.

interpreter haskell functional-programming

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