问题列表 - 第317981页

C++ 中按值传递造成的损坏

在 Herbert Schildt 的《C++ IT-Tutorial》一书中,第 9 章第 368 页,指出了以下问题:

即使您按值将对象传递给函数(在这种情况下,理论上应该隔离和保护传递的对象),该对象仍然可能会被更改甚至被副作用破坏。当在函数内调用对象的析构函数以删除对象的本地副本时,可能会发生这种情况。

该段落是为了鼓励使用复制构造函数而编写的。

不幸的是,尽管书中的大多数其他问题都用简单的示例进行了记录,但我找不到重现此行为的最小示例。你能推荐一个吗?

c++ destructor parameter-passing

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

如何使用 Chart.js 将水平网格线放置在条形上方?

我有一个 Chart.js,输出看起来像第一个图像,我希望它看起来像第二个图像,其中 y 轴线将“穿过”条形图并将其间隔开一点以获得更好的可见性,我不这样做我认为我们可以称之为填充,或者我如何使用 Chart.js 来创建这种效果?

在此输入图像描述

在此输入图像描述

这是我创建像第一张图片一样的条形的代码,谢谢。

<!DOCTYPE html>
<html lang="en">

<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>$DOGI Listings Graph</title>
  <script src="https://cdn.jsdelivr.net/npm/chart.js"></script>
  <style>
    html,
    body {
      height: 100%;
      margin: 0;
      background-color: black;
      color: white;
    }
    
    canvas {
      width: 100% !important;
      height: 100% !important;
    }
  </style>
</head>

<body style="background-color: black;color: white;">

  <canvas id="myChart"></canvas>

  <script>
    const chartData = [{
        x: 1,
        y: 34504
      }, {
        x: 2,
        y: 47831
      },
      {
        x: 3,
        y: 7050
      }, {
        x: 4,
        y: 8009 …
Run Code Online (Sandbox Code Playgroud)

javascript chart.js chartjs-2.6.0

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

pandas 字符串替换不会替换所有选择

我有这个数据框:

\n
dfsupport = pd.DataFrame({\'Date\': [\'8/12/2020\',\'8/12/2020\',\'13/1/2020\',\'24/5/2020\',\'31/10/2020\',\'11/7/2020\',\'11/7/2020\'],\n                          \'Category\': [\'Table\',\'Chair\',\'Cushion\',\'Table\',\'Chair\',\'Mats\',\'Mats\'],\n                          \'Sales\': [\'1 table\',\'3chairs\',\'8 cushions\',\'3Tables\',\'12 Chairs\',\'12Mats\',\'4Mats\'],\n                          \'Paid\': [\'Yes\',\'Yes\',\'Yes\',\'Yes\',\'No\',\'Yes\',\'Yes\',],\n                          \'Amount\': [\'93.78\',\'$51.99\',\'44.99\',\'38.24\',\'\xc2\xa329.99\',\'29 only\',\'18\']\n                          })\n
Run Code Online (Sandbox Code Playgroud)\n

我试图用空白替换货币符号,但下面的方法不起作用。

\n
patternv=\'|\'.join([\'$\', \'\xc2\xa3\'])\ndfsupport[\'Amount\'] = dfsupport[\'Amount\'].str.replace(patternv,\'\')\n
Run Code Online (Sandbox Code Playgroud)\n

为什么这不起作用?

\n

在上述之后打印数据框:

\n
          Date Category       Sales Paid   Amount\n0   8/12/2020    Table     1 table  Yes    93.78\n1   8/12/2020    Chair     3chairs  Yes   $51.99\n2   13/1/2020  Cushion  8 cushions  Yes    44.99\n3   24/5/2020    Table     3Tables  Yes    38.24\n4  31/10/2020    Chair   12 Chairs   No   \xc2\xa329.99\n5   11/7/2020     Mats      12Mats  Yes  29 only\n6   11/7/2020     Mats       4Mats  Yes       18\n         Date Category      Sales Paid  Amount\n1 …
Run Code Online (Sandbox Code Playgroud)

python string dataframe pandas

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

当 SFINAE 条件的满足取决于所声明的函数时,该条件是否保证为假?

考虑这段代码:

#include <type_traits>

struct A {};

struct B
{
    template <typename T, std::enable_if_t<!std::is_constructible_v<B, T &&>, std::nullptr_t> = nullptr>
    B(T &&) {}
};

int main()
{
    B b(A{});
}
Run Code Online (Sandbox Code Playgroud)

Clang、GCC 和 MSVC 都接受它。

这段代码是否有效,或者编译器应该拒绝它?

有趣的是,如果我使用requires而不是enable_if_t,GCC 和 Clang 开始拒绝它,而 MSVC 仍然接受。该错误归结为satisfaction of constraint depends on itself。

但同样的事情不应该导致第一个代码中的错误吗?或者这是未定义的?

#include <type_traits>

struct A {};

struct B
{
    template <typename T>
    requires(!std::is_constructible_v<B, T &&>)
    B(T &&) {}
};

int main()
{
    B b(A{});
}
Run Code Online (Sandbox Code Playgroud)

c++ language-lawyer

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

这个 void 指针的转换是有效代码还是恶意代码?

这是有效/正确的代码,还是违反标准——可能会调用未定义的行为(UB)?

void *--> 具体来说,是to char **in的转换foo()。<--

它确实有效,但我们知道“有效”还不够好。

以及任何其他错误,请撕掉它并发布更正的代码(如果您愿意的话)。

#include <stdio.h>
#include <stdlib.h>

#define SIZE 5

void foo(void *vp)
{
    char **dp = (char **)vp;
    int i;

    for(i=0; i<SIZE; i++)
    {
        printf("%s", dp[i]);
    }
}

int main()
{
    char **dp;
    int i;

    dp = malloc(SIZE * sizeof(char *));
    for(i=0; i<SIZE; i++)
    {
        dp[i]= malloc(20);
        sprintf(dp[i],"Now: %d\n",i);
    }
    foo(dp);

    return 0;
}
Run Code Online (Sandbox Code Playgroud)

输出:

#include <stdio.h>
#include <stdlib.h>

#define SIZE 5

void foo(void *vp)
{
    char …
Run Code Online (Sandbox Code Playgroud)

c casting undefined-behavior

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

Haskell 的 Data.Function.on 是做什么的?

我发现很难找到onHaskell 中的示例,而且我不明白 HoogleData.Function页面上的解释。请问,我可以提供其使用示例以及使用它使解决方案更简单或更高效的问题/代码示例吗?

haskell combinators

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

为了获得尽可能快的速度,我应该对 CUDA 中的矩阵使用什么步幅?

我正在处理大小范围从 2,000x2,000 到 5,000x5,000 的矩阵,执行乘法和 QR 分解等运算。例如,我很好奇是否应该将所有矩阵的步长对齐 64,以获得最佳性能。另外,由于缓存关联性,我是否应该避免步幅为某些页面大小的倍数,或者这不适用于 GPU 内存?

cuda memory-alignment stride

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

我可以在同一个 catch 中包含多种类型的异常吗?

在 C# 中,同一个 catch 中可以有多种类型的异常吗?我只是想如果有可能做这样的事情,我感谢任何帮助

try
{
}
catch (ArgumentException || FormatException x)
{
  // do something....
}
catch(Exception x)
{
  throw;
}
Run Code Online (Sandbox Code Playgroud)

.net c#

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

如何解决 Azure 管道构建中未找到键 '__CompressedAssembliesInfo 的程序集压缩信息

我创建了一个名为TestMauiApp的新 MAUI .NET 8.0 项目(与 Visual Studio 2022 创建的默认值相比没有任何更改) 。然后,我将一个 MAUI 类库添加到名为MauiLibrary的解决方案中,并将该类库链接到我的项目中。当我在 Azure Pipeline 上构建它时,出现以下错误:

"/Users/runner/work/1/s/TestMauiApp/TestMauiApp.sln" (SignAndroidPackage target) (1) ->
       "/Users/runner/work/1/s/TestMauiApp/SkiaGum.Mobile/MauiLibrary.csproj" (SignAndroidPackage target) (3) ->
       (_BuildApkEmbed target) -> 
         /Users/runner/hostedtoolcache/dotnet/packs/Microsoft.Android.Sdk.Darwin/34.0.43/tools/Xamarin.Android.Common.targets(2150,3): error XABBA7009: System.InvalidOperationException: Assembly compression info not found for key '__CompressedAssembliesInfo:/Users/runner/work/1/s/TestMauiApp/SkiaGum.Mobile/MauiLibrary.csproj'. Compression will not be performed. [/Users/runner/work/1/s/TestMauiApp/SkiaGum.Mobile/MauiLibrary.csproj::TargetFramework=net8.0-android]
       /Users/runner/hostedtoolcache/dotnet/packs/Microsoft.Android.Sdk.Darwin/34.0.43/tools/Xamarin.Android.Common.targets(2150,3): error XABBA7009:    at Xamarin.Android.Tasks.BuildApk.RunTask() [/Users/runner/work/1/s/TestMauiApp/SkiaGum.Mobile/MauiLibrary.csproj::TargetFramework=net8.0-android]
       /Users/runner/hostedtoolcache/dotnet/packs/Microsoft.Android.Sdk.Darwin/34.0.43/tools/Xamarin.Android.Common.targets(2150,3): error XABBA7009:    at Microsoft.Android.Build.Tasks.AndroidTask.Execute() in /Users/runner/work/1/s/xamarin-android/external/xamarin-android-tools/src/Microsoft.Android.Build.BaseTasks/AndroidTask.cs:line 25 [/Users/runner/work/1/s/TestMauiApp/SkiaGum.Mobile/MauiLibrary.csproj::TargetFramework=net8.0-android]


Run Code Online (Sandbox Code Playgroud)

我无法在任何地方找到有关此问题的信息,因此我不确定从哪里开始解决此问题。

更新1

通过将以下行添加到我的MauiLibrary csproj 文件中,我能够克服此错误(或者可能只是将其替换为其他错误)。

<AndroidEnableAssemblyCompression>false</AndroidEnableAssemblyCompression>
Run Code Online (Sandbox Code Playgroud)

通过这样做,我现在得到一个不同的错误:

 "/Users/runner/work/1/s/TestMauiApp/TestMauiApp.sln" (SignAndroidPackage target) (1) ->
       "/Users/runner/work/1/s/TestMauiApp/SkiaGum.Mobile/MauiLibrary.csproj" (SignAndroidPackage target) …
Run Code Online (Sandbox Code Playgroud)

c# android azure-devops maui

7
推荐指数
0
解决办法
229
查看次数

NullInjectorError:没有 _HttpClient 的提供者

大家好,我是 Angular 的新手,我遇到了这个错误:

\n
ERROR NullInjectorError: R3InjectorError(Standalone[_AppComponent])[_ApiCallServiceService -> _ApiCallServiceService -> _HttpClient -> _HttpClient]: \n  NullInjectorError: No provider for _HttpClient!\n    at NullInjector.get (core.mjs:5605:27)\n    at R3Injector.get (core.mjs:6048:33)\n    at R3Injector.get (core.mjs:6048:33)\n    at injectInjectorOnly (core.mjs:911:40)\n    at Module.\xc9\xb5\xc9\xb5inject (core.mjs:917:42)\n    at Object.ApiCallServiceService_Factory [as factory] (api-call-service.service.ts:8:35)\n    at core.mjs:6168:43\n    at runInInjectorProfilerContext (core.mjs:867:9)\n    at R3Injector.hydrate (core.mjs:6167:17)\n    at R3Injector.get (core.mjs:6037:33)\n
Run Code Online (Sandbox Code Playgroud)\n

应用程序组件.ts

\n
import { Component } from \'@angular/core\';\nimport { CommonModule } from \'@angular/common\';\nimport { RouterOutlet } from \'@angular/router\';\nimport {FormComponent} from "./component/form/form.component";\nimport {HttpClientModule} from "@angular/common/http";\n\n@Component({\n  selector: \'app-root\',\n  standalone: true,\n  imports: …
Run Code Online (Sandbox Code Playgroud)

typescript angular angular-httpclient

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