小编new*_*bie的帖子

Smalltalk - 有什么类似于来自C的&&?

我必须编写一个纯对象Smalltalk程序,我需要在其中评估条件,直到其中一个失败.我知道在C中,我们可以使用&&运算符,并且只有在必要时才能对条件进行评估.

Smalltalk中有类似的东西吗?

smalltalk operator-precedence

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

如何判断一个数字是否是带递归的平方数?

我解决了以下练习,但我不是解决方案的粉丝:

使用递归编写函数isPerfectSquare,判断一个Int是否是perfectSquare isPerfectSquare 1 - >应该返回True
isPerfectSquare 3 - >应该返回False

num+1部分是针对的情况isPerfectSquare 0 and isPerfectSquare 1,其中一个我不喜欢的部分,这是我的解决方案:

perfectSquare 0 1 = [0] ++ perfectSquare 1 3
perfectSquare current diff = [current] ++ perfectSquare (current + diff) (diff + 2)

isPerfectSquare num = any (==num) (take (num+1) (perfectSquare 0 1))
Run Code Online (Sandbox Code Playgroud)

什么是这个问题更优雅的解决方案?当然我们不能使用sqrt,也不能使用浮点运算.

recursion haskell

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

如何使用允许我访问结构字段的结构来测试 - > C运算符?

我正在尝试测试->运算符,但我似乎无法做到这一点,因为当我执行以下程序并使用流提供输入时,程序停止工作.

注1:我在编译之前收到警告,它说:

格式'%s'需要'char*'类型的参数,但参数2的类型为'int'[-Wformat =]

注2:如果我省略该行printf("%s\n", *(&home1)->name ),它就可以正常工作,并实际打印我写的任何内容.

#include <stdio.h>
#include <string.h>

typedef struct home_type {
    char name[30] ;
}home;

int main (void) {
    home home1 ;
    char name[30] ;
    scanf ("%[^\n]%*c", name);
    strcpy( home1.name, name) ;
    printf("%s\n", home1.name ) ;
    printf("%s\n", *(&home1)->name ) ;
    return 0 ;
}
Run Code Online (Sandbox Code Playgroud)

c pointers dereference

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

在 ASP.NET 应用程序中关闭 MySQL 连接的最佳方法是什么?

我开发了一个简单的应用程序,它允许用户在本地数据库中输入数据,但最终它会在生产环境中有许多同时连接,其中包括存储在数据中心的数据。

现在我的应用程序可以读取(从两个不同的表)和写入其中一个,但它至少有一个问题:我在用户结束为一名员工提交数据后立即关闭连接,我实际上想要应用程序允许在单个会话中输入其中的许多,因此流程将是:

(1) 。用户进入应用程序 > (2) 。用户保存员工 > (3) 。应用程序会通知用户输入的结果(可能是多个字段的重复值,这些字段会显示错误、成功保存的员工消息等)[在这里我关闭连接] > (4) 。回到(2),如果用户选择,我尝试再次打开它。


编辑:我在关闭连接后立即尝试输入新用户时遇到的错误是 "connection must be valid and open"

我期待一个 Singleton 对象处理这个,但实际上并没有这样做。

    private MySQLDataAccess()
    {
        this.openConnection();
    }

    private MySqlConnection Connection;

    private static MySQLDataAccess instance;

    public static MySQLDataAccess GetInstance()
    {
        if(instance == null)
        {
            instance = new MySQLDataAccess();
        }
        return instance;
    }
Run Code Online (Sandbox Code Playgroud)

所以,我的问题是...

应用程序结束后,应用程序是否应该立即关闭与数据库的连接?这可能包括一个用户一次节省 50 多名员工。

或者我应该在每次保存用户时关闭连接,然后再次打开它以保存新用户?(这就是我现在正在尝试做的,但我做得不好)

c# mysql asp.net-mvc

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