小编Ahm*_*mad的帖子

如何在Qt C++中为数组动态分配内存?

我在Qt SDK中用C++动态地为数组分配内存时遇到了一些问题...这是我正在做的:

int dx = 5;
QPoint * qPoint;
qPoint = new QPoint[dx+1];
Run Code Online (Sandbox Code Playgroud)

但是,当我尝试调试代码时,程序只是在尝试执行第三行时崩溃....任何线索?

c++ qt

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

无法将字符串(包含数字)转换为int?

我有一个非常愚蠢的问题..我有一个包含" 800.0000"(没有引号)的字符串,我正在尝试将其转换为数字800.我正在使用此命令,但它不起作用:

int inputNumber = Int32.Parse(inputString);

我得到FormatException,并显示消息"输入字符串格式不正确".

c# string type-conversion

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

将 GroupBox 内的所有控件设为只读?

我知道许多单独的控件都有一个ReadOnly属性。但是假设我有一个GroupBox其中有许多不同的控件(文本框、组合框、单选按钮等..),是否可以ReadOnly一起设置所有这些控件的属性?

并不是说我只想为特定内的控件设置此属性GroupBox(因为我也有多个 GroupBox,所以我不希望为其他 GroupBox 中的控件完成该设置)..

手动设置ReadOnly属性似乎非常昏昏欲睡,因为每个控件都有多达 20 个Groupbox(不要问为什么:p)。

.net c# controls groupbox winforms

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

是否有任何预定义的函数可以确定字符串是否只包含一个数字?

非常简单的问题......在Qt中是否有任何预定义函数可以确定字符串是否只包含一个数字?..有效的条目,如"28"和无效的条目,如"28","28"和"2a8 ......?

c++ qt

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

如何在LINQ中使用可空的内置变量?

我是一个非常新的LINQ,我在这里有一个问题.

我这里有一个非常简单的课程用于演示目的:

public class CurrencyPair
{
    public string? cultureCode;
    public string? currencyName;

    public CurrencyPair(string iCultureCode, string iCurrencyName)
    {
        cultureCode = iCultureCode;
        currencyName = iCurrencyName;
    }

    public CurrencyPair()
    {
        cultureCode = "";
        currencyName = "";
    }
}
Run Code Online (Sandbox Code Playgroud)

然后我有一个上面类的实例列表:

static List<CurrencyPair> currencyPairs;
Run Code Online (Sandbox Code Playgroud)

现在我正在尝试这样做:

public List<string> GetCurrencyNames()
{
    return (from c in currencyPairs select c.currencyName).Distinct().ToList();
}
Run Code Online (Sandbox Code Playgroud)

但是我收到此错误:

The type 'string' must be a non-nullable value type in order to use it as parameter 'T' in the generic type or method 'System.Nullable<T>'
Run Code Online (Sandbox Code Playgroud)

如果我删除? …

c# linq

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

在数据表上使用 LINQ 进行内联接

我有这 2 个数据表,customerTableDT并且customerAliasesTableDT. 它们都是从数据库中填充的,如下所示:

customerTableDT = UtilityDataAndFunctions.PerformDBReadTransactionDataTableFormat(String.Format("SELECT * FROM {0}", TableNames.customers));

customerAliasesTableDT = UtilityDataAndFunctions.PerformDBReadTransactionDataTableFormat(String.Format("SELECT * FROM {0}", TableNames.customerAliases));
Run Code Online (Sandbox Code Playgroud)

现在我尝试对两个数据表进行内部联接,如下所示:

var customerNames = from customers in customerTableDT.AsEnumerable()
                    join aliases in customerAliasesTableDT.AsEnumerable on customers.Field<int>("CustomerID") equals aliases.Field<int>("CustomerID")
                    where aliases.Field<string>("Alias").Contains(iString) select customers.Field<string>("Name")
Run Code Online (Sandbox Code Playgroud)

但它给了我这个错误:

The type of one of the expressions in the join clause is incorrect.  Type inference failed in the call to 'Join'.
Run Code Online (Sandbox Code Playgroud)

如果我必须用 SQL 编写我想要做的事情,那么它非常简单:

SELECT * FROM CUSTOMERS C
INNER JOIN CustomerAliases ALIASES ON ALIASES.CustomerID = C.CustomerID …
Run Code Online (Sandbox Code Playgroud)

c# linq inner-join

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

通过 Java Streams 时 AssertThrows 不会抛出异常

所以我正在编写单元测试,其中我正在测试将用户列入黑名单和取消黑名单的能力(这是我代码中的一个功能,它本身工作正常)。

这是一个按预期工作的示例命令:

assertThrows(ExecutionException.class, () -> onlineStore.lookup("533"));
Run Code Online (Sandbox Code Playgroud)

如果我将用户“533”列入黑名单,然后运行上面的命令,它工作正常,因为 anExecutionException被引发(因为您正在尝试查找被列入黑名单的用户)。类似地,如果我没有将用户“533”列入黑名单但仍然运行上述命令,则测试将失败,这也是出于类似原因的预期(即,由于您未获取列入黑名单的用户,因此现在不会抛出异常)。

但是,如果我有一个List用户 ID userIds(用户“533”现在是其中的一部分)并且我将它们全部列入黑名单(我知道功能正常),然后运行以下命令:

userIds.stream().map(id -> assertDoesNotThrow(() -> onlineStore.lookup(id)));
Run Code Online (Sandbox Code Playgroud)

...测试通过,即使通过它也应该失败。为什么 ?因为现在所有用户都被列入黑名单,所以在获取这些用户时,ExecutionExceptions应该已经抛出..

如果我现在用以下任一命令替换上面的流命令,它们会按预期工作:

assertThrows(ExecutionException.class, () -> onlineStore.lookup("533"));

assertDoesNotThrow(() -> onlineStore.lookup("533"));
Run Code Online (Sandbox Code Playgroud)

所以这一切让我相信,出于某种原因,在通过 Java Streams 时,throwsExecutionExceptions不会被捕获。

这种行为有什么解释吗?

java junit unit-testing assert java-stream

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

在Java中转换日期格式的最快方法?

我有一个文本字段,以这种格式显示日期字符串:MM/dd/yyyy(例如03/12/2012)...我想将其转换为这种格式:yyyy-MM-dd(例如2012-03- 12)...所以基本上我需要的转换是:

MM/dd/yyyy ---> yyyy-MM-dd
Run Code Online (Sandbox Code Playgroud)

两种数据类型都是字符串..

什么是最快的方式?

java date date-format

0
推荐指数
2
解决办法
2590
查看次数