- Siêu lớp và danh mục iOS/Objective-C
- object-c - -1001 lỗi khi NSURLSession vượt qua httpproxy và /etc/hosts
- java - Nhận địa chỉ url bằng lớp mạng
- ios - Âm thanh không phát trong thông báo đẩy
Ví dụ: hãy xem xét trường hợp sau đây khi tên xung đột tổ 1
:
mẫu lớp Nest1 {};
lớp cls {
public:
mẫu lớp Nest1 {};
mẫu lớp Nest2 {
public:
thanh void(nest1 x);
};
};
mẫu
void cls::nest2::bar(nest1 x) {} // làm cách nào trình biên dịch biết tổ <1> nào?
thanh
Nó có tồn tại không? nhu cầu tổ1
hoặc cls::nest1
nếu chúng ta không sử dụng cls::
dưới dạng tiền tố (ví dụ: thanh(cls::nest1 x)
)?cls::
Đó có phải là một thói quen tốt? Dẫu sao thì?LƯU Ý: Trình biên dịch thực sự chọn khai báo ngầm thanh(cls::nest1
:
cls::nest1 x;
công việc:http://ideone.com/3ZuH2Z Nest1 x;
thất bại:http://ideone.com/6HmA3f
câu trả lời hay nhất
Mỗi tên được sử dụng sau tên hàm thành viên cũng được tra cứu trong phạm vi từ vựng của lớp của nó. Điều này dẫn đến hành vi (dường như) không nhất quán sau đây do kiểu trả về thông thườngKHÔNGTrong phạm vi từ vựng của lớp:
cấu trúc X{
cấu trúc Y{};
Y foo(Y);
thanh Y(Y);
};
// kiểu trả về bình thường là trước 'foo', cần xác định phạm vi rõ ràng
// tham số không có (sau 'foo')
X::YX::foo(Y y){ return y }
// Trailing-return-type cũng không có (sau 'bar')
auto X::bar(Y y) -> Y{ return y }
Về các tiêu chuẩn về vấn đề này, chúng tôi xem xét§9.3 [class.mfct] p5
:
Nếu định nghĩa của hàm thành viên về mặt từ vựng nằm ngoài định nghĩa lớp của nó thì tên hàm thành viên sẽ được xác định theo tên lớp của nó bằng cách sử dụng
::
toán tử.[ Ghi chú: Tên được sử dụng trong định nghĩa hàm thành viên (nghĩa là trong mệnh đề khai báo tham số bao gồm các đối số mặc định (8.3.6) hoặc trong thân hàm thành viên) được tra cứu như mô tả trong 3.4. —ghi chú cuối ] […]
sau đó vào §3.4.1 [basic.lookup.unqual] p8
(tra cứu tên không đủ tiêu chuẩn, ví dụ: không có ::
):
Tên được sử dụng trong định nghĩa hàm thành viên (9.3) của lớp
X
theo chức năng của người khai báo-id31 ... sẽ được khai báo theo một trong các cách sau:
- […]
- sẽ là thành viên của lớp
X
hoặc là thành viên của một lớp cơ sở củaX
(10.2), hoặc- […]
(Trong ví dụ của tôi,id khai báo Đúng foo
Và thanh
。)
Về c++ - Chúng ta có cần thêm tiền tố vào các tham số thành viên của các kiểu lồng nhau bằng "::" không? , chúng tôi đã tìm thấy một câu hỏi tương tự trên Stack Overflow: https://stackoverflow.com/questions/16493015/
Khi đăng truy vấn sau, tôi nhận được phản hồi lỗi truy vấn {"error":{"root_nguyên nhân":[{"type:"parsing_Exception","reason":"[tiền tố] không
Tôi thực sự mới với Python và Django... Điều tôi muốn làm là: Cài đặt Python 2.7 trên Mac OS 10.6.8 Cài đặt pip Cài đặt Django Cài đặt virtualenvwr
Biểu thức tiền tố Một biểu thức tiền tố còn được gọi là biểu thức Ba Lan. Toán tử của biểu thức tiền tố nằm trước toán hạng. Ví dụ: ( 3 + 4 ) × 5 − 6 (3+4)×5-6(3+4)×5−6 Biểu thức tiền tố tương ứng là - × + 3 4 5 6
Làm cách nào để xác định chuỗi tiếng Nga trong trình biên dịch Intel C? Trong MSVS 2008 tôi làm điều này: _wsetlocale(LC_ALL, L" russian"); wprintf(L"текст"); hiện hữu
Đây là những gì tôi đã có cho đến nay: SPECS = $(shell find spec -iname "*_spec.js") spec: @NODE_ENV=test \ @NODE_PAT
Tôi đã thấy tiền tố sau::nó đại diện cho cái gì? :abc là một từ khóa, nhưng ::abc là gì? Cảm ơn, Murtaza Câu trả lời hay nhất giả định không gian tên hiện tại là my.app. Khi đó, ::x là từ viết tắt của người đọc cho :my.app/x,
Tôi đã tạo tính năng gợi ý cho Discord của mình, nơi người dùng có thể nói +gợi ý và tính năng này sẽ tự động đăng lên kênh khác. Có một số điều tôi cần trợ giúp: Đặt "Đề xuất của người dùng" trong tiêu đề thay vì trên một dòng riêng.
#include int main() { int a=1; printf("%d",(++a)++); return 0 } Đã xảy ra lỗi trong mã này: giá trị không hợp lệ trong
Tôi gặp một vấn đề nhỏ khi sử dụng các toán tử tiền tố và hậu tố để thực hiện phép trừ trên các số. Đây là chương trình của tôi: public class postfixprefix { public static void main (Strin
Khi tôi chạy thử nghiệm khả năng tương thích HTML5 trong trình duyệt gốc Android, nó thấy hỗ trợ IndexedDB được đánh dấu là "Tiền tố" trong khi ở Chrome và các trình duyệt khác, nó được đánh dấu là "Có". Tôi biết
Tôi đã thử nạp chồng toán tử --prefix nhưng tôi gặp lỗi, có ai có thể trợ giúp không? #include #include "Circulo.h" sử dụng không gian tên std; int main() { //par
Tôi đang cố gắng tạo một tính năng trích dẫn trên diễn đàn này và khi tôi nhấn trích dẫn, tôi chỉ điền vào vùng văn bản bằng Markdown, nhưng điều duy nhất là tôi cần thêm tiền tố vào mỗi dòng đánh dấu bằng > như thế này
Đặt cược giữa những người bạn. Biến tổng được định nghĩa là biến toàn cục. Chúng tôi có 2 luồng chạy trên vòng lặp 1..100 và tăng tổng lên 1 trong mỗi vòng lặp. Những gì để in? "và ="? int sum = 0;
Câu hỏi này đã có câu trả lời ở đây: đã đóng cửa 10 năm trước. Có thể trùng lặp: Khái niệm Tăng sau và Tăng trước? Ai có thể giải thích rõ ràng các khái niệm tăng tiền tố và tăng sau?
Khi kế thừa từ một lớp mẫu, tôi cần thêm vào trước tất cả các thành viên của lớp cơ sở được truy cập trong lớp dẫn xuất: template struct X{ int void bar();
Theo như tôi biết, trong C++, việc gọi một hàm thành viên khác trong một hàm thành viên của cùng một lớp không yêu cầu tiền tố "this" vì nó ẩn. Tuy nhiên, trong trường hợp cụ thể của việc sử dụng con trỏ hàm, trình biên dịch sẽ yêu cầu nó. Chỉ khi tôi bao gồm "cái này" cho cuộc gọi thông qua con trỏ func
Ví dụ: hãy xem xét xung đột tên sau đây trong đó Nest1 : template class Nest1 {}; class cls { public: template class Nest1 {};
Tôi không thể hiểu logic của một đoạn mã cụ thể bên dưới. int i[] = { 21, 4, -17, 45 }; int* i_ptr = i; std::cout << (*i_ptr)++ << std::endl
Bất cứ ai có thể chỉ cho tôi đi đúng hướng, tôi hiện có cơ sở dữ liệu có thể tìm kiếm nhưng gặp khó khăn khi tìm kiếm theo tiêu đề. Nếu tiêu đề bắt đầu bằng "The" thì rõ ràng tiêu đề sẽ nằm ở phần "T", cách hay để tránh phải tìm kiếm "The" là gì? Tôi nên nối hai trường để hiển thị chỉ số dưới
Tôi đã tạo một dự án mới 2 giờ trước. Định cấu hình nó giống như dự án cũ (khác) của tôi, mọi thứ đều hoạt động tốt. Trong podfile của tôi, tôi có: pod 'CocoaLumberjack', '2.0.0-rc2' Nếu tôi
Tôi là một lập trình viên xuất sắc, rất giỏi!