คำถามติดแท็ก templates

เทมเพลตแท็กใช้ในหลายบริบท: การเขียนโปรแกรมทั่วไป (โดยเฉพาะ C ++) และการสร้างข้อมูล / เอกสารโดยใช้เทมเพลตเอนจิ้น เมื่อใช้แท็กนี้กับคำถามที่มีการใช้งานหนัก - ติดแท็กรหัสภาษาที่มีการใช้งาน

1
ฟังก์ชันเทมเพลตภายในคลาสเทมเพลต
ฉันมีรหัสนี้: template <class T> class MyClass { public: template <class U> void foo() { U a; a.invoke(); } }; ฉันต้องการในรูปแบบนี้: template <class T> class MyClass { public: template <class U> void foo(); }; template <class T> /* ????? */ void MyClass<T>::foo() { U a; a.invoke(); } ฉันจะทำสิ่งนี้ได้อย่างไร? ไวยากรณ์ที่ถูกต้องคืออะไร?
119 c++  templates 

5
`is_base_of` ทำงานอย่างไร
รหัสต่อไปนี้ทำงานอย่างไร typedef char (&yes)[1]; typedef char (&no)[2]; template <typename B, typename D> struct Host { operator B*() const; operator D*(); }; template <typename B, typename D> struct is_base_of { template <typename T> static yes check(D*, T); static no check(B*, int); static const bool value = sizeof(check(Host<B,D>(), int())) == sizeof(yes); }; …

11
Flask ทำให้เกิดข้อผิดพลาด TemplateNotFound แม้ว่าจะมีไฟล์เทมเพลตอยู่ก็ตาม
home.htmlฉันพยายามที่จะทำให้ไฟล์ มีไฟล์อยู่ในโปรเจ็กต์ของฉัน แต่ฉันยังคงได้รับjinja2.exceptions.TemplateNotFound: home.htmlเมื่อพยายามแสดง ทำไม Flask ไม่พบเทมเพลตของฉัน from flask import Flask, render_template app = Flask(__name__) @app.route('/') def home(): return render_template('home.html') /myproject app.py home.html
118 python  file  templates  flask 

2
ฉันจะสร้างอินสแตนซ์ฟังก์ชันเทมเพลตอย่างชัดเจนได้อย่างไร
ฉันมีฟังก์ชันเทมเพลตที่มีอาร์กิวเมนต์เดียว ฉันต้องสร้างอินสแตนซ์ของฟังก์ชันนั้นโดยไม่เรียกใช้ฟังก์ชันนั้นหมายความว่าฉันต้องสร้างอินสแตนซ์อย่างชัดเจน ฉันมีฟังก์ชั่นนี้: template <class T> int function_name(T a) {} ฉันสร้างอินสแตนซ์ฟังก์ชันนั้นดังนี้: template int function_name<int>(int); แต่ฉันได้รับข้อผิดพลาดต่อไปนี้: error: expected primary-expression before 'template' error: expected `;' before 'template'
117 c++  templates 

5
ใช้เทมเพลตภายนอก (C ++ 11)
รูปที่ 1: เทมเพลตฟังก์ชัน TemplHeader.h template<typename T> void f(); TemplCpp.cpp template<typename T> void f(){ //... } //explicit instantation template void f<T>(); main.cpp #include "TemplHeader.h" extern template void f<T>(); //is this correct? int main() { f<char>(); return 0; } นี่เป็นวิธีใช้ที่ถูกต้องextern templateหรือฉันใช้คีย์เวิร์ดนี้เฉพาะกับเทมเพลตคลาสดังรูปที่ 2 รูปที่ 2: เทมเพลตคลาส TemplHeader.h template<typename T> class foo { T …
116 c++  templates  c++11  extern 

10
แอปพลิเคชันไม่ดึงไฟล์. css (flask / python)
ฉันกำลังแสดงเทมเพลตซึ่งฉันกำลังพยายามจัดรูปแบบด้วยสไตล์ชีตภายนอก โครงสร้างไฟล์มีดังนี้ /app - app_runner.py /services - app.py /templates - mainpage.html /styles - mainpage.css mainpage.html มีลักษณะดังนี้ <html> <head> <link rel= "stylesheet" type= "text/css" href= "../styles/mainpage.css"> </head> <body> <!-- content --> ไม่มีการใช้สไตล์ของฉันเลย มีส่วนเกี่ยวข้องกับข้อเท็จจริงที่ว่า html เป็นเทมเพลตที่ฉันกำลังแสดงอยู่หรือไม่? งูเหลือมมีลักษณะเช่นนี้ return render_template("mainpage.html", variables..) ฉันรู้ว่าสิ่งนี้ใช้ได้ผลดีเพราะฉันยังสามารถแสดงเทมเพลตได้ อย่างไรก็ตามเมื่อฉันพยายามย้ายโค้ดสไตล์จากบล็อก "style" ภายในแท็ก "head" ของ html ไปยังไฟล์ภายนอกการจัดแต่งทรงผมทั้งหมดก็หายไปโดยเหลือเพียงหน้า html ใครเห็นข้อผิดพลาดเกี่ยวกับโครงสร้างไฟล์ของฉัน
115 python  html  css  templates  flask 

8
แนะนำที่ดีที่สุดสำหรับการเขียนโปรแกรมแม่แบบ C ++? [ปิด]
ปิด. คำถามนี้ไม่เป็นไปตามหลักเกณฑ์กองมากเกิน ขณะนี้ยังไม่ยอมรับคำตอบ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้เป็นหัวข้อสำหรับ Stack Overflow ปิดให้บริการใน3 ปีที่ผ่านมา ปรับปรุงคำถามนี้ Static metaprogramming (aka "template metaprogramming") เป็นเทคนิค C ++ ที่ยอดเยี่ยมที่ช่วยให้สามารถเรียกใช้โปรแกรมได้ในเวลาคอมไพล์ หลอดไฟดับลงในหัวของฉันทันทีที่ฉันอ่านตัวอย่างการเขียนโปรแกรมเมตาแบบบัญญัตินี้: #include <iostream> using namespace std; template< int n > struct factorial { enum { ret = factorial< n - 1 >::ret * n }; }; template<> struct factorial< 0 > …

15
แม่แบบ C ++ ทัวริงสมบูรณ์?
ฉันบอกว่าระบบเทมเพลตใน C ++ ทัวริงสมบูรณ์ในเวลาคอมไพล์ สิ่งนี้ถูกกล่าวถึงในโพสต์นี้และในวิกิพีเดีย คุณสามารถให้ตัวอย่างการคำนวณที่ใช้ประโยชน์จากคุณสมบัตินี้ได้หรือไม่ ข้อเท็จจริงนี้มีประโยชน์ในทางปฏิบัติหรือไม่?

8
* ngIf else if in template
ฉันจะมีหลายกรณีใน*ngIfแถลงการณ์ได้อย่างไร? ฉันใช้ Vue หรือเชิงมุม 1 มีif, else ifและelseแต่มันดูเหมือนว่าเชิงมุม 4 มีเพียงtrue( if) และfalse( else) เงื่อนไข ตามเอกสารฉันทำได้แค่: <ng-container *ngIf="foo === 1; then first else second"></ng-container> <ng-template #first>First</ng-template> <ng-template #second>Second</ng-template> <ng-template #third>Third</ng-template> แต่ฉันต้องการมีหลายเงื่อนไข (บางอย่างเช่น): <ng-container *ngIf="foo === 1; then first; foo === 2; then second else third"></ng-container> <ng-template #first>First</ng-template> <ng-template #second>Second</ng-template> <ng-template #third>Third</ng-template> …

3
การใช้ ngIf โดยไม่มีองค์ประกอบพิเศษใน Angular 2
ฉันสามารถใช้ngIfโดยไม่มีองค์ประกอบคอนเทนเนอร์เพิ่มเติมได้หรือไม่ <tr *ngFor="..."> <div *ngIf="..."> ... </div> <div *ngIf="!..."> ... </div> </tr> ไม่ทำงานในตารางเนื่องจากจะทำให้ HTML ไม่ถูกต้อง
108 html  templates  angular 

6
การสืบทอดจากคลาสเทมเพลตใน c ++
สมมติว่าเรามีคลาสเทมเพลตAreaซึ่งมีตัวแปรสมาชิกT areaa T getArea()และvoid setArea(T)ฟังก์ชันสมาชิก ฉันสามารถสร้างวัตถุชนิดโดยเฉพาะการพิมพ์AreaArea<int> ตอนนี้ฉันมีคลาสRectangleที่สืบทอดAreaคลาส เนื่องจากRectangleตัวมันเองไม่ใช่เทมเพลตฉันจึงไม่สามารถพิมพ์Rectangle<int>ได้ ฉันจะเชี่ยวชาญAreaประเภทที่สืบทอดมาสำหรับRectangleวัตถุได้อย่างไร แก้ไข: ขออภัยฉันลืมที่จะชี้แจง - คำถามของฉันคือเป็นไปได้หรือไม่ที่จะสืบทอด Area โดยไม่เชี่ยวชาญดังนั้นจึงไม่ได้รับการสืบทอดเป็น Area of ​​ints แต่เนื่องจาก Area Rectangle สามารถเชี่ยวชาญประเภทสำหรับ


15
จะแทนที่ชุดโทเค็นใน Java String ได้อย่างไร?
ฉันมีสตริงแม่แบบต่อไปนี้: "Hello [Name] Please find attached [Invoice Number] which is due on [Due Date]". ฉันมีตัวแปรสตริงสำหรับชื่อหมายเลขใบแจ้งหนี้และวันครบกำหนดด้วย - วิธีใดดีที่สุดในการแทนที่โทเค็นในเทมเพลตด้วยตัวแปร (โปรดทราบว่าหากตัวแปรมีโทเค็นอยู่ก็ไม่ควรแทนที่) แก้ไข ขอบคุณ @laginimaineb และ @ alan-moore นี่คือทางออกของฉัน: public static String replaceTokens(String text, Map<String, String> replacements) { Pattern pattern = Pattern.compile("\\[(.+?)\\]"); Matcher matcher = pattern.matcher(text); StringBuffer buffer = new StringBuffer(); while (matcher.find()) { …
106 java  regex  templates 

11
เปลี่ยนเทมเพลตใน Xcode
ฉันจะเปลี่ยนเทมเพลตเริ่มต้นที่สร้างโดย Xcode ได้อย่างไรเมื่อสร้าง Cocoa Class ใหม่ ฉันอ้างถึงความคิดเห็นและชื่อคลาสที่สร้างขึ้นเมื่อใช้ตัวช่วยสร้างคลาสใหม่ของ Xcode

3
จะส่งต่อประกาศคลาสเทมเพลต C ++ ได้อย่างไร
กำหนดคลาสเทมเพลตดังต่อไปนี้: template<typename Type, typename IDType=typename Type::IDType> class Mappings { public: ... Type valueFor(const IDType& id) { // return value } ... }; มีคนส่งต่อประกาศคลาสนี้ในไฟล์ส่วนหัวได้อย่างไร

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.