问题列表 - 第317982页

x = x*0.90; 给出有损转换错误。x*=0.90;才不是。为什么?

我已经写了代码:

int x = 18;
x *= 0.90; 
System.out.println(x);
Run Code Online (Sandbox Code Playgroud)

这段代码打印出来16

然而,当我写下

int x = 18;
x = x * 0.90; 
System.out.println(x);
Run Code Online (Sandbox Code Playgroud)

它给了我以下错误:incompatible types: possible lossy conversion from double to int

我预计这两个代码示例都会导致与 相同的错误x *= y;,x = x * y;但x *= 0.90;不知何故有效,但x = x * 0.90;无效。为什么会这样呢?

java double integer multiplication assignment-operator

25
推荐指数
2
解决办法
2489
查看次数

stripe_android:compileReleaseJavaWithJavac'。错误:无效源版本:17

我在 VS code 上运行我的 flutter 项目时遇到这个问题,经过多次尝试后仍然卡在这里。任何人请帮我解决这个问题。 即使我已经通过这样做更新了java版本,但仍面临问题。已更新为 8 至 11 但仍然卡在这里

    sourceCompatibility JavaVersion.VERSION_1_8
    targetCompatibility JavaVersion.VERSION_1_8
Run Code Online (Sandbox Code Playgroud)

运行 flutter 项目时,我面临有关无效源版本 17 的问题。

gradle dart flutter

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

拦截器在 Angular 17 中不拦截

我正在通过课程学习角度,目前我正在学习拦截器。课程中的角度版本不是 17,但我在本地使用的版本是。因此,在第一次尝试通过类实现拦截器之后,由于拦截没有发生,因此无法正常工作。

当我查看 net 并发现我们可以设置一个拦截常量并且我们可以在 app.config.ts 中提供它时,即使这样做之后它也不起作用。所以我真的被困住了。任何帮助,将不胜感激。这是我的文件:

应用程序组件.ts

import { Component, OnInit, OnDestroy } from '@angular/core';
import { HttpClient, HttpClientModule } from '@angular/common/http';
import { CommonModule } from '@angular/common';
import { RouterOutlet } from '@angular/router';
import { FormsModule } from '@angular/forms';
import { Post } from './Post';
import { PostService } from './post-service';
import { Subscription } from 'rxjs';

@Component({
    selector: 'app-root',
    standalone: true,
    imports: [CommonModule, RouterOutlet, HttpClientModule, FormsModule],
    templateUrl: './app.component.html',
    styleUrl: './app.component.css'
})
export class AppComponent implements OnInit, OnDestroy …
Run Code Online (Sandbox Code Playgroud)

angular-http angular angular-httpclient-interceptors

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

在这种“非常”特定的情况下执行原子读取的最快方法是什么?

背景

事实证明,所有(?)编译器都将其视为std::atomic::load(std::memory_order_relaxed)易失性负载(通过__iso_volatile_load64等)。
他们根本不优化或重新排序。即使丢弃加载的值仍然会生成加载指令,因为编译器将其视为可能产生副作用。

因此,松弛载荷不是最佳的。照这样说...


问题 (x86)

假设p指向共享内存中一个单调递增的 8 字节计数器,该计数器仅写入我的进程之外。我的程序只从这个地址读取。

我想以这样的方式读取这个计数器:

  1. 负载是原子的(无撕裂)

  2. 该计数器保留顺序(因此这x = *p; y = *p;意味着x <= y)

  3. 负载不被视为不透明/优化障碍(除了上面的#2)

特别是,这里的目的是编译器在正常内存访问时执行尽可能多的优化,例如:无用的加载(如(void)*p;)被丢弃,其他指令围绕此内存访问自由重新排序,等等。

除了使用易失性负载之外,还有什么方法可以在 MSVC 或 Clang 上实现此目的吗?

(特定于实现的黑客/内在函数/等都可以,只要这些特定的实现永远不会将其视为未定义的行为,因此不存在错误代码生成的风险。)

c++ x86 atomic clang visual-c++

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

非平凡结构的大括号初始化会导致意外行为

在附加的代码片段中,我预计:std::vector<C> d = { {} };会导致编译器错误,因为B无法默认构造。那么如果没有错误,我希望d.size()是1。这是意外行为还是我错过了一些不言而喻的事情?

#include <array>
#include <algorithm>
#include <iostream>
#include <vector>

struct A {};

struct B {
    B( int ) {}
};

struct C {
    A a;
    B b;
};


int main() {
    ::std::vector<C> d = { {} }; //ok?!?!
    //::std::vector<C> d2 = { C() }; Error
    //C c; Error
    //d.push_back( {} ); Error
    //d.push_back( { {}, { 3 } } ); Ok

    return d.size(); // 0 instead of …
Run Code Online (Sandbox Code Playgroud)

c++

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

我的反应项目“react”:“^18.2.0”版本和“react-select”:“5.4.0”版本出现错误

我的反应项目“react”:“^18.2.0”版本和“react-select”:“5.4.0”版本今天出现错误,该项目直到昨天都运行顺利。

当我尝试构建我的项目时,它给了我下面的错误。

TS2322: Type '{ color: THEME.defaultHighLightColor; zIndex: number; accentColor?: Property.AccentColor | readonly string[] | Property.AccentColor[] | undefined; alignContent?: Property.AlignContent | readonly string[] | Property.AlignContent[] | undefined; ... 953 more ...; label?: string | undefined; }' is not assignable to type 'CSSObjectWithLabel'.   Type '{ color: THEME.defaultHighLightColor; zIndex: number; accentColor?: Property.AccentColor | readonly string[] | Property.AccentColor[] | undefined; alignContent?: Property.AlignContent | readonly string[] | Property.AlignContent[] | undefined; ... 953 more ...; label?: string | undefined; }' is not assignable to type …
Run Code Online (Sandbox Code Playgroud)

reactjs react-select

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

如何在 Langchain 中激活详细程度

我正在使用 Langchain 0.0.345。我无法使用LCEL 方法构建链来获得幕后发生的情况的详细输出。

我有这个代码:

from langchain.chat_models import ChatOpenAI
from langchain.prompts import ChatPromptTemplate
from langchain.schema.output_parser import StrOutputParser
from langchain.globals import set_verbose

set_verbose(True)

prompt = ChatPromptTemplate.from_template("tell me a joke about {topic}")
model = ChatOpenAI()
output_parser = StrOutputParser()

chain = prompt | model | output_parser

chain.invoke({"topic": "ice cream"})
Run Code Online (Sandbox Code Playgroud)

根据文档,使用的set_verbose是显示中间步骤、提示构建等的详细输出的方法。但是该脚本的输出只是一个字符串,没有任何中间步骤。实际上, API 文档langchain.globals中甚至没有提及该模块。

我也尝试过verbose=True在模型创建中设置参数,但也不起作用。这用于与前一种方法一起使用类等进行构建。

建议和当前的方法是如何记录输出以便您了解发生了什么?

谢谢!

python langchain large-language-model

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

%d 如何用于字符串中的“”?结果:4210704

#include <stdio.h>

int main()
{
    printf("%c code\n", 'C');
    printf("%d", "");
    return 0;
}
Run Code Online (Sandbox Code Playgroud)
#include <stdio.h>

int main()
{
    printf("%d", 3); /* result 3 */
    printf("%d", '3'); /* result 51, because 3 is char (from ASCII table) */
    printf("%d", ""); /
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

我是 C 语言的初学者。我阅读了 Greg Pery 和 Dean Miller 所著的《C 编程绝对初学者指南》第四版。有 %c %d 和 %f 的示例。我开始对它们进行实验,并注意到我无法解释它是如何制作的。所以我用 %d 尝试了这些例子并理解了前两个是如何工作的。对于最后一个,我知道计算机如何读取它,但我不确定所有 0 和 1 是如何组合在一起的。如果您对此有解释,我很乐意回复您)))

c printf integer string-literals conversion-specifier

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

数组类型的复制初始化

考虑下面的示例,其中t声明为int[1]; 根据 C++20 标准,ain的初始化合法吗?t a = t{};初始化的行为t a = t{};是否会受到标记为的a影响constexpr?C++20 标准对此有何规定?那么 的初始化又如何呢constexpr auto a = t{};?为什么 MSVC 接受它?

static_assert([]{
    using t = int[1];
    constexpr t a{};        // all ok
    constexpr t a = {};     // all ok
    constexpr t a = t{};    // clang nope, gcc ok, msvc ok
    t a = t{};              // clang nope, gcc ok, msvc nope
    constexpr auto a = …
Run Code Online (Sandbox Code Playgroud)

c++ language-lawyer c++20

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

如何转发类模板的构造函数参数

考虑一种默认值Bar:

struct Bar
{
};
Run Code Online (Sandbox Code Playgroud)

以及 a 的特定情况Bar,MyBar它有一个需要 : 的构造函数int:

struct MyBar
{
    MyBar(int n){}
};
Run Code Online (Sandbox Code Playgroud)

然后我有一个使用以下内容的类Bar:

template<class ThisBar = Bar> struct Foo : ThisBar
{
    Foo(double){}; // Construct the 'Foo' from a 'double'
};
Run Code Online (Sandbox Code Playgroud)

但一个障碍是,如果我想要一个,Foo<MyBar>我需要能够构建MyBar:

Foo<MyBar> f(1.0, 1);
Run Code Online (Sandbox Code Playgroud)

其中int用来构造MyBar。我的问题是如何编写这个构造函数,以便下面的代码可以在 C++17 中编译?

int main()
{
    Foo<MyBar> f(1.0, 1);
}
Run Code Online (Sandbox Code Playgroud)

c++ templates c++17

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