问题列表 - 第318089页

delphi对象生命周期,接口重新赋值(简单问题)

众所周知(???),Delphi 对接口对象的接口引用进行引用计数,并在其引用计数降至零时销毁这些对象,通常是因为所有相关的接口变量都超出了范围。

假设我使用全局接口变量来引用持久对象:

type 
  tMySyncClass = class(TInterfacedObject,TmyInterface); ...  
  tMyAsyncClass = class(TInterfacedObject,TmyInterface); ...

var MyInterfaceVar : TmyInterface;

procedure MyProc();
begin
  MyInterfaceVar := tMySyncClass.create();
  ....
  MyInterfaceVar := tMyAsyncClass.create();
end
Run Code Online (Sandbox Code Playgroud)

调用 后MyProc,我有一个 的实例,并对其进行了tMyAsyncClass一个(全局)引用。MyInterface

我还有一个未引用的MySyncClass对象吗?重新分配是否会MyInterfaceVar触发第一个 ( SyncClass) 对象的销毁?

delphi interface reference

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

Angular 构建在 Heroku 上失败并显示最小错误消息

我有一个在 Heroku 上运行的 Angular 和 NodeJs 应用程序。一切都运行良好,构建良好,直到突然 heroku build 不断失败并给出了一条最小的错误消息,这使得很难找到问题所在。我到处搜索,只发现一个可能存在相同问题的线程,但没有修复工作。奇怪的是,该项目在本地运行时运行完美。

\n

我注意到的另一件事是,如果我尝试构建之前已经成功构建的代码,我仍然会遇到相同的错误。有人可以帮助我并指出正确的方向来确定此错误的原因和可能的修复方法吗?

\n

我遇到的错误是:

\n
 - Generating browser application bundles...\n\xe2\x9c\x94 Browser application bundle generation complete.\nWarning: ./src/app/shared/item-options-dialog-component-square/item-options-dialog-component-square.component.scss\nModule Warning (from ./node_modules/postcss-loader/dist/cjs.js):\nWarning\n(128:3) autoprefixer: end value has mixed support, consider using flex-end instead\nWarning: /tmp/build_a00f8c33/src/app/order/items-by-category/items-by-category.component.scss exceeded maximum budget. Budget 7.00 kB was not met by 82 bytes with a total of 7.08 kB.\nError: node_modules/engine.io-parser/build/esm/index.d.ts:5:38 - error TS2307: Cannot find module \'node:stream/web\' or its corresponding type declarations.\n5 import type { TransformStream } from "node:stream/web";\n                                       ~~~~~~~~~~~~~~~~~\n-----> Build …
Run Code Online (Sandbox Code Playgroud)

compiler-errors heroku node.js angular modulenotfounderror

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

使用命名空间时的歧义:“using”单一事物会泄漏其他东西吗?

我在使用名称空间时遇到歧义问题。

代码:

namespace app::hal {
    enum class Motor {
        Left  = 0,
        Right = 1
    };

    void setMotor(Motor which, float duty);
}

namespace app::control {
    using Motor = app::hal::Motor;

    void setMotor(Motor which, float duty);
    float getMotor(Motor which);

}

inline void test() {
    using app::control::setMotor;
    using app::control::Motor;
    setMotor(Motor::Left, 0);
}
Run Code Online (Sandbox Code Playgroud)

错误:

<source>:24:17: error: call of overloaded 'setMotor(app::hal::Motor, int)' is ambiguous
   24 |         setMotor(Motor::Left, 0);
      |         ~~~~~~~~^~~~~~~~~~~~~~~~
<source>:15:14: note: candidate: 'void app::control::setMotor(Motor, float)'
   15 |         void setMotor(Motor which, float duty);
      |              ^~~~~~~~ …
Run Code Online (Sandbox Code Playgroud)

c++ namespaces using-declaration

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

C 编程 - 结构体中的 2U 或 8U 是什么

此链接中的代码:https://github.com/openwch/arduino_core_ch32/blob/main/libraries/USBPD_SINK/src/usbpd_def.h

我正在看以前的文件。我做了一些搜索,发现了一些关于 unsign int Literal 的内容。但是,我不确定在这种情况下它有何意义,希望有人可以向我解释。

typedef struct 
{
    uint32_t MaxOperatingCurrent10mAunits : 10u;
    uint32_t OperatingCurrentIn10mAunits  : 10u;
    uint32_t Reserved20_21                : 2u; // 00b
    uint32_t EPRModeCapable               : 1u; 
    uint32_t UnchunkedExtendedMessage     : 1u;
    uint32_t NoUSBSuspend                 : 1u;
    uint32_t USBCommunicationsCapable     : 1u;
    uint32_t CapabilityMismatch           : 1u;
    uint32_t GiveBackFlag                 : 1u;
    uint32_t ObjectPosition               : 4u;
}USBPD_SinkFixedVariableRDO_t;
Run Code Online (Sandbox Code Playgroud)

假设 32 位填充,该结构的总大小是否为 44 字节?每个结构体成员末尾的 10u、2u 是什么?

c struct literals

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

C# 中如何将数组中的每个元素相减?

我想将每个元素彼此相减,有点像这样:

List<int> list = [20, 4, 3, 7];
list = SubtractAll(list); // 20 - 4 - 3 - 7
Run Code Online (Sandbox Code Playgroud)

所需的输出是:

6
Run Code Online (Sandbox Code Playgroud)

这将如何完成?有没有一种简单的方法可以做到这一点?

c# math list subtraction

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

Chrome 扩展程序:第三方 cookie 将被阻止。在“问题”选项卡中了解更多信息

我正在开发一个 Chrome 扩展,其manifest.json 文件如下:

{
    "manifest_version": 3,
    "name": "JIRA bug Recorder",
    "description": "",
    "background": { "service_worker": "background.bundle.js" },
    "action": {
        "default_popup": "popup.html",
        "default_icon": "Icon32.png"
    },
    "icons": {
        "32": "Icon32.png",
        "128": "Icon128.png"
    },
    "permissions": [
        "activeTab",
        "scripting",
        "storage",
        "unlimitedStorage",
        "contextMenus",
        "webNavigation",
        "tabs",
        "desktopCapture"
    ],
    "host_permissions": ["<all_urls>"],
    "content_scripts": [
        {
            "matches": ["<all_urls>"],
            "js": ["pageContent.bundle.js"]
        }
    ]
}
Run Code Online (Sandbox Code Playgroud)

当我单击扩展程序图标以显示 popup.html 时,我在扩展程序上收到以下错误。

在此输入图像描述

我注意到,如果我从 manifest.json 中删除host_permissions和字段,错误就会消失。content_scripts

我不知道为什么,因为我的脚本都没有设置跨站点 cookie,包括pageContent.bundle.js.

有谁知道如何解决或抑制这个问题?

谢谢,

google-chrome google-chrome-extension

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

“错误:类型‘JSObject’不能用作超类型。” 将 flutter 应用程序部署到 vercel 时

出现错误:类型“JSObject”不能用作超类型。错误,但我没有在代码中的任何地方使用 dart.js,并且无法将我的应用程序部署到 vercel。

在此输入图像描述

以下是我的 pubspec:

name: appname
description: "A new Flutter project."
publish_to: 'none'
version: 0.1.0

environment:
  sdk: '>=3.2.5 <4.0.0'

dependencies:
  flutter:
    sdk: flutter
  get: ^4.6.6
  font_awesome_flutter: ^10.6.0
  http: ^1.2.0
  flutter_dotenv: ^5.1.0
  

dev_dependencies:
  flutter_test:
    sdk: flutter

flutter:
  uses-material-design: true

assets:
  - .env
Run Code Online (Sandbox Code Playgroud)

web-applications flutter vercel

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

在 R 中获取 2 个英国邮政编码之间的距离

我有一个数据框,df其中包含带有英国邮政编码值的多个观察值。我想创建一个新列,用于计算每个观测值 df$origin 和 df$dest 中邮政编码之间的距离。

我没有获得 Google Maps API 的资金,想知道是否可以使用PostcodeioR? 或者在 RStudio 中有替代的免费方法吗?

# MRE
origin <- c("S6 2PA", "S35 0DP", "M1 6BD", "DE55 4JF")
dest <- c("S5 7AU", "S5 7AU", "S5 7AU", "S5 7AU")

df <- tibble(origin,dest)
Run Code Online (Sandbox Code Playgroud)

优选地,所创建的距离是驾驶距离,而不是直线距离,但是我意识到这可能是不可能的。

maps r distance postal-code

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

为什么关键字 false 在 gcc C23 中不是整数常量表达式?

gcc -std=c23最新的 gcc 13.x (trunk) 给出了此代码的编译器错误 ( ):

\n
int* p = false;\n
Run Code Online (Sandbox Code Playgroud)\n
\n

错误:int *使用类型“ ”初始化类型“ _Bool”时出现类型不兼容

\n
\n

这怎么可能是正确的呢?

\n
\n

C23 6.2.5 \xc2\xa78-9(类型 - 整数类型的定义):

\n
\n

bool与标准有符号整数类型相对应的类型和无符号整数类型是标准无符号整数类型

\n

标准有符号整数类型和标准无符号整数类型统称为标准整数类型

\n
\n

C23 6.6 \xc2\xa78 (常量表达式 - 整型常量表达式的定义):

\n
\n

整数常量表达式应具有整数类型...

\n
\n

C23 6.3.2.3(指针-空指针常量的定义)

\n
\n

值为 0 的整型常量表达式,此类表达式转换为 类型void *,或预定义常量nullptr称为空指针常量

\n
\n

C23 6.5.16.1(简单分配):

\n
\n

约束
\n/--/ …

c gcc null-pointer language-lawyer c23

31
推荐指数
2
解决办法
2505
查看次数

查询意外返回上一年的日期

我正在 SQL Server 中运行此查询,它返回 2023 年的日期?

SELECT *
FROM tblVisitor
WHERE checkInDate BETWEEN '01/02/2024' AND '06/02/2024'
Run Code Online (Sandbox Code Playgroud)

仔细查看表格时,我注意到表格中的日期似乎被设置为VarChar(50)并且只是以下格式的纯文本:dd/mm/yyyy。我想知道是不是因为需要转换?

任何帮助将不胜感激。

sql sql-server

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