问题列表 - 第4276页

为什么不按回车键'\n'到getch()?

#include <stdio.h>
#include <conio.h>
main()
{
    char ch,name[20];
    int i=0;
    clrscr();
    printf("Enter a string:");
    while((ch=getch())!='\n')
    {
        name[i]=ch;
        i++;
    }
    name[i] = '\0';
    printf("%s",name);
}
Run Code Online (Sandbox Code Playgroud)

当我输入"abc"作为输入时,如果按下输入则不起作用.任何人都可以让我知道为什么条件ch = getch()!='\n'在按Enter键时不会变为假?我还观察到ch正在使用\ r而不是\n.请告诉我.谢谢

c input

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

我看到许多使用"Foo ^ bar"的C++示例 - 什么是"^"?

这与.NET有关吗?它似乎是某种指针,有什么区别?

编辑:

我实际上知道它是XOR运算符,但是从这个页面看这个例子.

void objectCollection() {
    using namespace System::Collections;

    **ArrayList ^as = gcnew ArrayList;**

    //... }
Run Code Online (Sandbox Code Playgroud)

这是什么?

谢谢.

c++

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

Perl是否有枚举类型?

Perl是否具有遵循最佳实践的枚举类型,或者更重要的是,它是否需要一个?

我正在工作的项目使用遍布各处的字符串来表示通常在C#等语言中使用Enum的内容.例如,我们在一组哈希中有一组电话号码,每个电话号码与电话类型("主页","工作","移动"等)相关联:

$phone_number->{type} = 'Home';
Run Code Online (Sandbox Code Playgroud)

在这里使用只读变量集还是使用Enum是否足够?我enum在CPAN上找到了一个模块,但似乎使用了违反Perl最佳实践之一的单词.我对使用只读变量的想法是这样的:

use Readonly;

Readonly my $HOME   => 'Home';
Readonly my $WORK   => 'Work';
Readonly my $MOBILE => 'Mobile';

$phone_number->{type} = $HOME;
Run Code Online (Sandbox Code Playgroud)

这是一个好方法还是有更好的方法?

perl enums

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

TDD:帮助编写Testable类

我有一个快速的小应用程序,并想尝试使用TDD开发.我从未使用过TDD,甚至在我找到ASP.NET-MVC之前甚至都不知道它是什么.(我的第一个MVC应用程序进行了单元测试,但它们很脆弱,方式耦合,保留太多,并且被放弃了 - 我来学习单元测试!= TDD).

应用背景:

我有一个以字符串形式读入的采购订单的文本转储.我需要解析文本并返回新的采购订单编号,新的行项目编号,旧的采购订单编号,旧的采购订单行号.很简单.

现在我只处理新的采购订单详细信息(数量/行),并有一个这样的模型:

public class PurchaseOrder
{
    public string NewNumber {get; private set;}
    public string NewLine {get; private set;}

    new public PurchaseOrder(string purchaseOrderText)
    {
        NewNumber = GetNewNumber(purchaseOrderText);
        NewLine = GetNewLine(purchaseOrderText);
    }

    // ... definition of GetNewNumber / GetNewLine ...
    //  both return null if they can't parse the text
}
Run Code Online (Sandbox Code Playgroud)

现在我想添加一个方法"IsValid",只有当"NewNumber"和"NewLine"都是非空时才应该为真.所以我想测试它像:

public void Purchase_Order_Is_Valid_When_New_Purchase_Order_Number_And_Line_Number_Are_Not_Null()
{
    PurchaseOrder order = new PurchaseOrder()
    {
        NewNumber = "123456",
        NewLine = "001"
    };

    Assert.IsTrue(order.IsValid);
}
Run Code Online (Sandbox Code Playgroud)

这很容易,但是允许公共setter和无参数构造函数似乎是一个糟糕的折衷方案.所以另一种方法是在构造函数中输入'purchaseOrderText'值,但之后我也在测试'GetNewNumber'和'GetNewLine'的代码.

我有点难以理解如何将其作为一个可测试的类写入,同时试图将其锁定在对模型有意义的方面.这似乎是一个常见的问题,所以我想我只是错过了一个明显的概念.

c# tdd asp.net-mvc unit-testing

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

它是否有助于GC在Java中使null变为null

myLocalVar = null;在离开方法之前,我被"强制"在finally子句中添加语句.原因是帮助GC.有人告诉我,下次服务器崩溃时我会收到短信,所以我最好这样做:-).

我认为这是毫无意义的,因为myLocalVar的范围是方法,并且一旦方法退出就会"丢失".额外的归零只会污染代码,否则无害.

我的问题是,这个关于帮助GC的神话来自哪里?(我被称为"Java记忆书")你知道"权威"的任何文章更深入地解释它吗?有可能这不是一个神话,但真的有所帮助吗?如果是这样,怎么样?可能会使局部变量归零会造成任何伤害?

为了澄清,方法看起来像这样:

void method() {
  MyClass myLocalVar = null;
  try {
    myLocalVar = get reference to object;
    ... do more here ...
  } finally {
    if (myLocalVar != null) {
      myLocalVar.close(); // it is resource which we should close
    }

    myLocalVar = null; // THIS IS THE LINE I AM TALKING ABOUT
  }
}
Run Code Online (Sandbox Code Playgroud)

java variables null garbage-collection local

40
推荐指数
6
解决办法
9773
查看次数

在ASP.NET MVC Beta中通过IP地址限制对特定控制器的访问

我有一个包含AdminController类的ASP.NET MVC项目,并给我这样的URls:

http://example.com/admin/AddCustomer

http://examle.com/Admin/ListCustomers

我想配置服务器/应用程序,以便只能从192.168.0.0/24网络(即我们的LAN)访问包含/ Admin的 URI

我想将此控制器限制为只能从某些IP地址访问.

在WebForms下,/ admin /是一个物理文件夹,我可以在IIS中限制...但是使用MVC,当然,没有物理文件夹.这是使用web.config或属性实现的,还是我需要拦截HTTP请求来实现这一目标?

c# security asp.net-mvc authorization web-config

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

为什么在此代码中忽略析构函数?

以下代码演示了Turbo C++ Explorer项目中的一个奇怪问题.超出范围后,D :: D()中的三个堆栈对象之一不会被销毁.

只有在发布模式下编译时才会发生这种情况,auto_ptrs a_和b_属于不同类型,抛出的异常不会从std :: exception继承.它似乎在VC++ 2005和C++ Builder 2009中工作正常.我确实安装了BDS2006 Update 2,修补程序汇总和修补程序12.

是我的代码还是编译器?你知道修复吗?无法在VCL项目中可靠地使用auto_ptr会非常不方便.


#include <memory>
#include <stdexcept>
#include <iostream>

typedef std::exception my_error; // will work fine if replaced with line below
//class my_error : public std::exception {};

class A {};
class B {};

class C
{
public:
    C(int id) : id_(id) { std::cout << "C::C() " << id_ << std::endl; };
    ~C() { std::cout << "C::~C() " << id_ << std::endl; };
private:
    int id_;
};

class D …
Run Code Online (Sandbox Code Playgroud)

c++ destructor c++builder

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

杀死以Groovy execute()开头的进程

我可以使用Groovy运行Groovy脚本

proc ="cmd/c groovy BillingServer.groovy".execute(null,new File("C:\"))

但是,我找不到一种方法来终止/终止进程. waitForOrKill(1)并且destroy()"行动"就像他们工作一样,但外部过程继续运行.呼叫exitValue()失败了

java.lang.IllegalThreadStateException:进程尚未退出

我如何杀死我开始的过程?

groovy process

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

NS前缀是什么意思?

Cocoa/Cocoa Touch中的许多类都有NS前缀.这是什么意思?

cocoa cocoa-touch objective-c ios

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

用于诊断.NET中的内存泄漏的工具(ASP.NET应用程序)

我们需要一个工具来轻松检测ASP.NET应用程序中的内存泄漏.我们有一个消耗大量内存的应用程序.

谢谢

.net asp.net memory-leaks

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