我github.com/rs/zerolog
在我的 golang 项目中使用。
我知道我可以使用如下方式将字段添加到输出中:
package main
import (
"os"
"github.com/rs/zerolog"
)
func main() {
logger := zerolog.New(os.Stderr).With().Timestamp().Logger()
logger.Int("myIntField", 42)
logger.Info("a regular log output") // this log entry will also contain the integer field `myIntField`
}
Run Code Online (Sandbox Code Playgroud)
但我想要的是在行运行时评估字段logger.Info("a regular log output")
的值myIntField
是什么。
我有一个带有 go-routines 的生产者/消费者设置(例如,请参阅https://goplay.tools/snippet/hkoMAwqKcwj),并且我有两个整数,它们以原子方式计算仍在运行的消费者和生产者 go-routines 的数量。在拆除消费者和生产者后,我想在运行时显示这些数字。
这是使用 log 而不是 Zerolog 时的代码:
package main
import (
"fmt"
"log"
"os"
"sync"
"sync/atomic"
)
func main() {
numProducers := int32(3)
numConsumers := int32(3)
producersRunning …
Run Code Online (Sandbox Code Playgroud) sort(str.begin(), str.end())
using和 C++ 中的 using有什么区别sort(std::begin(str), std::end(str))
?
这两个函数给出的结果与排序后的字符串相同,但是两者之间有什么区别吗?两者都有的原因是什么?
tl;dr将字节切片复制到本地字节数组(其大小可能与切片大小相同或不同)的最快方法是什么?
给定从函数返回的一些切片作为slice_: &[u8]
. 我想将最大数量的切片数据复制到已知大小的本地数组buffer: [u8; 1024] = [0; 1024]
. 换句话说,尽可能多地复制 fromslice_
到buffer
。可以slice_
是任意长度。
fn main() {
let slice_: &[u8] = get_slice();
let mut buffer: [u8; 1024] = [0; 1024];
// copy slice_ to buffer ...
}
Run Code Online (Sandbox Code Playgroud)
复制切片最快的方法是什么?复制切片最惯用的方法是什么?
我知道功能copy_from_slice
。然而,这需要
的长度
src
必须与 相同self
。
我可以迭代,slice_
但这看起来很笨拙。我猜想还有一种更优雅的“质朴”方式。
我目前正在使用 HTML5 的画布来使用Impact字体渲染字符串。这工作正常,但笔画似乎从整个文本区域中渗出。有没有什么办法解决这一问题?
代码和渲染可以在这里看到: http: //jsfiddle.net/5uczpa1k/
var c = document.getElementById("myCanvas");
var ctx = c.getContext("2d");
ctx.font = "80px Impact";
ctx.strokeStyle = 'black';
ctx.lineWidth = 20;
ctx.fillStyle = 'white';
ctx.strokeText("A TEXT DEMO", 50, 150);
ctx.fillText("A TEXT DEMO", 50, 150);
Run Code Online (Sandbox Code Playgroud)
<canvas id="myCanvas" width="500" height="500"></canvas>
Run Code Online (Sandbox Code Playgroud)
目前,我在我的机器上签出了同一个 Git 项目的两个副本。我知道传统上人们不会这样做;更典型的做法是检查项目一次并根据需要切换分支。我拥有第二个副本的主要原因是,我可以在 IDE 中本地查看合并请求 \xe2\x80\x94\xc2\xa0,以及运行代码 \xe2\x80\x94,而无需从任何内容切换上下文我可能正在进行工作。该工作可能不适合我隐藏、提交或停止运行长时间运行的进程。
\n我不小心在本地对项目的错误副本进行了一些更改,并希望将它们移动到正确的副本。
\n我知道我可以创建一个分支,将它们推送到服务器,在另一个分支上检查它们,然后删除远程分支。这并不是太繁重。
\ncd /path/to/source-project\n\ngit switch -c myTempBranch\ngit push -u origin myTempBranch\n\ncd /path/to/other-project\n\ngit pull\ngit merge myTempBranch\ngit push -d origin myTempBranch\n
Run Code Online (Sandbox Code Playgroud)\n话虽如此,这些更改还没有准备好供其他人使用,如果我可以在本地完成所有这些操作而无需涉及远程服务器,那就太好了。
\n有没有一种方法可以将一个签出的 get 项目中的一系列提交应用到该项目的不同副本而不推送它?
\n这是我的代码:
x = ["Hello","Nice","WELCOME"]
y = "HELLO"
app x y = filter (isInfixOf (map to Lower y)) (map (map toLower) x)
Run Code Online (Sandbox Code Playgroud)
输出:应用程序 xy -> [“hello”]
我需要原始输出(“HELLO”),而不是不导入模块的较低输出。--
谢谢
我创建了一个 React 应用程序,从中调用基于 PHP 构建的服务器。
以下是我调用 PHP 文件的方式:
const requestOptions = {
method: 'POST',
headers: { 'Content-Type': 'application/x-www-form-urlencoded' },
body: JSON.stringify({ name, username, password }),
};
console.log(requestOptions);
fetch('http://localhost/crud/requests/signup.php', requestOptions)
.then(res => res.json())
.then(data => console.log(data));
Run Code Online (Sandbox Code Playgroud)
这是我在 PHP 文件中的内容:
if (isset($_POST) && !empty($_POST)) {
// do something
}
Run Code Online (Sandbox Code Playgroud)
当我打印$_POST
变量时,我得到一个空数组。甚至$_RESPONSE
是空的。
但是当我尝试像这样打印输入流时:
print_r(file_get_contents('php://input'));
Run Code Online (Sandbox Code Playgroud)
一切似乎都很好。谁能解释为什么会发生这种情况?我尝试在文档中阅读它并查找一些论坛和博客,但对答案不满意。
我创建了一个类Animal
:
class Animal {\npublic:\n Animal() = default;\n Animal(Animal&& a) = delete;\n Animal(Animal& a) = delete;\n\n Animal& operator=(Animal&& a) = delete;\n Animal& operator=(Animal& a) = delete;\n};\n\nAnimal func1() {\n return Animal();\n}\n\nAnimal func2() {\n Animal a {};\n return a;\n}\n\nint main(void) {\n Animal a1 = func1();\n Animal a2 = func2();\n return 0;\n}\n
Run Code Online (Sandbox Code Playgroud)\n我不明白为什么func1()
工作正常:return Animal()
创建一个右值对象,然后a1
在函数中使用该对象进行初始化main
;据我所知,它等于
Animal a1 = func1()\n ==\nAnimal a1 = Animal&& temp //(I wrote type in assignment for clarifying)\n
Run Code Online (Sandbox Code Playgroud)\n … 就像标题所说,我对这段代码中“永远”的含义感到困惑。我读到它应该意味着永远不会发生或排除其他类型的东西,但我不太明白为什么它会像下面的代码片段一样使用。
import { View, Button, Text, StyleSheet, FlatList, TouchableOpacity, Image } from 'react-native'
import React from 'react'
import { useNavigation } from '@react-navigation/native'
const data = [
{
id: 1,
title: 'Google Search',
screen: 'MapScreen',
},
{
id: 2,
title: 'I\'m Feeling Lucky',
screen: 'MapScreen',
}
]
const NavOptions = (props: NavProps) => {
const navigation = useNavigation();
return (
<FlatList
data={data}
keyExtractor={(item) => item.id}
horizontal
renderItem={({ item }) => (
<View style={styles.container}>
<TouchableOpacity
onPress={() => props.term && navigation.navigate(item.screen as …
Run Code Online (Sandbox Code Playgroud) 我有一个看起来像这样的数组:
const subscriptions = [
{
"price": "20",
"product": "apple",
"quantity": 1,
},
{
"price": "10",
"product": "orange",
"quantity": 1,
},
{
"price": "10",
"product": "orange",
"quantity": 1,
},
{
"price": "10",
"product": "orange",
"quantity": 1,
},
]
Run Code Online (Sandbox Code Playgroud)
我想取出所有具有apple
、banana
或 的“乘积”的数组元素pear
。
filter()
所以我这样使用:
const currentPlans = subscriptions.filter(
(subscription) =>
subscription.product ===
('apple' || 'banana' || 'pear')
);
Run Code Online (Sandbox Code Playgroud)
由于数组只有一个实例,apple
因此应该currentPlans
包含该实例。
但currentPlans
返回一个空数组。
我究竟做错了什么?