- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
Tôi đang cố gắng Vec<>
创建一个集合向量 ( Vec<>
) .这是我目前的进展:
use std::collections::BTreeSet;
fn main() {
// The data
let transaction_list = [
vec!['A','B','C','D'],
vec!['B','B','C'],
vec!['A','B','B','D']
];
// Successfully created a set from the Vec of Vec. It contains unique chars
let item_set: BTreeSet = transaction_list.iter().flat_map(|t| t).cloned().collect();
// Made the same Vec of Vec. Basically just experimenting with map and collect
let the_same_transaction_list: Vec<>> = transaction_list.iter().map(|t| t ).cloned().collect::>();
// ERROR
let transaction_set: Vec<>> = transaction_list
.iter()
.map(|t| t.iter().map(|t| t).cloned().collect() )
.cloned().collect::>();
}
错误信息是:
error: the trait `core::iter::FromIterator` is not implemented for the type `&_` [E0277]
.map(|t| t.iter().map(|t| t).cloned().collect() )
^~~~~~~~~
help: see the detailed explanation for E0277
note: a collection of type `&_` cannot be built from an iterator over elements of type `char`
我还没有找到制作 Vec<>
的正确方法来自 Vec<>
.这是 Playground 网址:http://is.gd/WVONHY .
1 Câu trả lời
错误信息有点奇怪。这是解决方案:
let transaction_set: Vec> =
transaction_list
.iter()
.map(|t| t.iter().cloned().collect())
.collect();
两个主要变化是:
map(|x| x)
毫无意义。这是一个空操作。dòng vô tính
. map
调用的结果类型已经是 BTreeSet
。无需再次克隆它。后者解决了你的问题,所以让我们看看定义:
fn cloned<'a, T>(self) -> Cloned
where Self: Iterator- ,
T: 'a + Clone
为了能够调用dòng vô tính
,迭代器Item
必须是对可克隆对象的Tài liệu tham khảo。但是,您正在尝试迭代不是引用的 BTreeSet
。编译器选择告诉您无法将 char
的内部迭代器 collect
转换为 &_
(对某种类型的引用),这然后将满足调用 cloned
的要求。我的猜测是内部类型比 collect
所需的类型有更多的回旋余地。如果我们稍微重写原始代码以在内部具有更明确的类型:
let transaction_set: Vec<_> =
transaction_list
.iter()
.map(|t| -> BTreeSet<_> {t.iter().cloned().collect()})
.cloned().collect();
我们得到了一组不同的错误:
error: type mismatch resolving `<[closure...] as core::ops::FnOnce<(&collections::vec::Vec,)>>::Output == &_`:
expected struct `collections::btree::set::BTreeSet`,
found &-ptr [E0271]
.cloned().collect();
^~~~~~~~
error: no method named `collect` found for type `core::iter::Cloned<>>, [closure...]>>` in the current scope
.cloned().collect();
^~~~~~~~~
note: the method `collect` exists but the following trait bounds were not satisfied: `core::iter::Cloned<>>, [closure...]>> : core::iter::Iterator`
这有助于强调问题是由 cloned
的外部使用引起的。
关于collections - 从 Vec<>
Giới thiệu: Đôi khi, một cơ sở dữ liệu có nhiều tài khoản, bao gồm quản trị viên cơ sở dữ liệu, nhà phát triển, nhân viên hỗ trợ vận hành và bảo trì, v.v. Nhiều tài khoản có thể có quyền tương đối lớn, chẳng hạn như quyền thao tác DDL (tạo, sửa đổi, xóa thủ tục được lưu trữ, tạo, sửa đổi, xóa bảng, v.v.).
Vì vậy, tôi đã tạo và thiết lập một ứng dụng React lớn bằng cách sử dụng Create React App. Gần đây chúng tôi bắt đầu sử dụng Storybook để xử lý và tạo các thành phần. Nó hoạt động rất tốt. Tuy nhiên, khi chúng ta cố gắng chạy hoặc xây dựng ứng dụng, chúng ta vẫn gặp phải
Sau đây là đoạn mã cho điều khiển mà tôi đang tạo. Kiểm soát này được sử dụng ở nhiều nơi khác nhau và các biến cũng khác nhau. Tôi đang cố gắng viết một lệnh để dọn dẹp mã của mình nhưng tôi gặp lỗi phân tích cú pháp khi chèn giá trị gần {{}}. Mới làm quen với Angular và không biết mình đang bỏ lỡ điều gì. Xin hãy giúp đỡ.
Tôi đang cố gắng tạo một lớp cung cấp image/jpeg jax-rs để tạo ra một hình ảnh cho dịch vụ web dựa trên rest của bài đăng của tôi. Tôi đang gặp khó khăn khi xây dựng yêu cầu kiểm tra những điều sau, cách dễ nhất để kiểm tra là gì? @BƯU KIỆN
Tôi đã thực hành ngôn ngữ c trên trình giả lập Windows 10. Sau đó tôi chuyển sang dev C++ IDE. Khi tôi sử dụng FILE trong C. Tên của tệp được tạo là test.txt trong khi tôi đã đặt tên khác. Xin hãy giúp giải quyết vấn đề này. dưới
Khi chúng ta tạo một View tùy chỉnh, chúng ta đặt chủ sở hữu của tệp View thành lớp tùy chỉnh và khởi tạo nó bằng initWithFrame hoặc initWithCode. Khi chúng ta tạo customUITable
Tôi đang cố gắng tạo một luồng cho hàm *Producer nhưng dòng lệnh tạo luồng lại hiển thị lỗi. Tôi đã đánh dấu sao cho câu này, nhưng tôi không hiểu có gì sai với nó... #include #include #include
Hôm nay, khi đang làm việc trên một dự án, tôi gặp phải tình huống cần tạo một đối tượng JavaScript. Vì vậy, tôi đã tìm thấy một bài viết do một người nước ngoài viết về 3 cách để tạo đối tượng JavaScript, sau đó tôi đã nhập mã. Tôi nghĩ phương pháp này khá tốt nên muốn chia sẻ với các bạn. &
Tôi đang đọc tài liệu về cách truyền chuỗi truy vấn tới S3 của Amazon để xác thực, nhưng có vẻ như tôi không hiểu StringToSign được tạo và sử dụng như thế nào. Tôi đang tìm kiếm một ví dụ cụ thể cho thấy cách (1) xây dựng một Chuỗi
Lời nói đầu: Tôi không biết nhiều về cách triển khai cơ bản của các tác vụ trong C#, tôi chỉ biết cách sử dụng chúng. Xin lỗi vì những điều tôi đã nói sai ở bên dưới: Tôi không thể tìm ra câu trả lời thỏa đáng cho câu hỏi "Làm thế nào tôi có thể bắt đầu một nhiệm vụ mà không phải chờ đợi?" Trong C#. Cụ thể hơn, ngay cả khi có bất kỳ
Tôi có một ILookup được tạo ra bởi một số biểu thức phức tạp. Giả sử đây là việc tra cứu thông tin của mọi người theo họ. (Trong mô hình thế giới đơn giản của chúng ta, họ là duy nhất trong một gia đình) ILookup families; Bây giờ tôi có hai truy vấn mà tôi muốn biết cách xây dựng. cái đầu
Tôi đang cố gắng tạo một MSI có chứa file exe. Trong WIX, tùy chọn đóng gói được sử dụng. Đã xảy ra lỗi khi thực hiện thao tác này. Có ai vui lòng giúp tôi giải quyết vấn đề này không? Đây là mã lỗi: lỗi LGH
Trong Yii, Create và Update thường sử dụng cùng một form. Vì vậy, nếu tôi có các trường như email, mật khẩu, ...other_fields... trong quá trình tạo, nhưng tôi không muốn hiển thị cụ thể các trường email và mật khẩu trong quá trình cập nhật, nhưng
Tôi đã vật lộn trong tuần qua để tạo QModelIndex dựa trên một hàng và một cột. Ngoài ra, tôi sẽ giải quyết bằng cách thay đổi giá trị của row() trong QModelIndex hiện có. Bất kỳ sự giúp đỡ nào cũng được hoan nghênh. Chỉnh sửa: QModelInd
Vì một lý do nào đó, điều này không hiệu quả: const char * str_reset_command = "\r\nReset"; const char * str_config_command = "\r\nC
Bây giờ, tôi có data.frame sau được tạo bởi original.df %.% group_by(Category) %.% tally() %.% arrange(desc(n)) . DF5),
Trước hôm nay, tôi đã sử dụng /etc/vim/vimrc để cấu hình cài đặt vim của mình. Hôm nay, tôi nghĩ đến việc tạo một tệp .vimrc. Vì vậy, tôi sử dụng touch .vimrc cat /etc/vim/vimrc > .vimrc
Tôi có thể tạo MKAnnotation không hay chỉ có thể đọc? Tôi có tọa độ nhưng thấy không dễ để tạo MKAnnotation theo cách thủ công bằng setCooperative. ý tưởng? Câu trả lời hay nhất MKAnnotation
Trong đoạn mã sau, câu lệnh nhật ký đầu tiên hiển thị số thập phân như mong đợi, nhưng câu lệnh nhật ký thứ hai lại ghi NULL. Tôi đang làm gì sai? NSDictionary *entry = [[NSDictionary phân bổ] initWithOb
Tôi đang sử dụng mã tương tự như thế này để thêm động vào một mảng; $arrayF[$f+1][$y][$x+1] = $value+1; Tuy nhiên, tôi nhận được thông báo lỗi này trong báo cáo: undefined offset :1 Vấn đề: Đang cố gắng tạo
Tôi là một lập trình viên xuất sắc, rất giỏi!