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

ขอบเขตคือบริบทที่ล้อมรอบซึ่งเกี่ยวข้องกับค่าและนิพจน์ ใช้แท็กนี้สำหรับคำถามเกี่ยวกับขอบเขตประเภทต่าง ๆ รวมถึงคำถามที่ขอบเขตไม่ชัดเจน


4
ตัวแปรสแตติกในฟังก์ชันสมาชิก
ใครช่วยกรุณาอธิบายว่าตัวแปรสแตติกในฟังก์ชันสมาชิกทำงานใน C ++ ได้อย่างไร รับคลาสต่อไปนี้: class A { void foo() { static int i; i++; } } หากฉันประกาศหลายอินสแตนซ์การAเรียกfoo()ใช้อินสแตนซ์หนึ่งเพิ่มตัวแปรสแตติกiในทุกอินสแตนซ์หรือไม่ หรือเพียงอันเดียวที่ถูกเรียกใช้? ฉันสันนิษฐานว่าแต่ละอินสแตนซ์จะมีสำเนาของตัวเองiแต่ก้าวผ่านโค้ดบางอย่างฉันดูเหมือนจะบ่งบอกเป็นอย่างอื่น
158 c++  static  scope 

5
ประกาศ enum ภายในคลาส
ในโค้ดต่อไปนี้Colorenum จะถูกประกาศภายในCarคลาสเพื่อ จำกัด ขอบเขตของ enum และพยายามที่จะไม่ "สร้างมลภาวะ" เนมสเปซส่วนกลาง class Car { public: enum Color { RED, BLUE, WHITE }; void SetColor( Car::Color color ) { _color = color; } Car::Color GetColor() const { return _color; } private: Car::Color _color; }; (1) นี่เป็นวิธีที่ดีในการ จำกัด ขอบเขตของColorenum หรือไม่? หรือฉันควรประกาศมันนอกCarชั้นเรียน แต่อาจจะอยู่ในเนมสเปซหรือ struct ของตัวเอง? ฉันเพิ่งมาข้ามบทความนี้ในวันนี้ซึ่งสนับสนุนหลังและกล่าวถึงจุดที่ดีบางอย่างเกี่ยวกับ …
151 c++  class  enums  namespaces  scope 

7
จำกัด จำนวนผลลัพธ์ที่แสดงเมื่อใช้ ngRepeat
ฉันพบว่าบทเรียน AngularJSยากที่จะเข้าใจ อันนี้ฉันกำลังเดินผ่านการสร้างแอพที่แสดงโทรศัพท์ ฉันอยู่ในขั้นตอนที่ 5และฉันคิดว่าเป็นการทดลองฉันพยายามอนุญาตให้ผู้ใช้ระบุจำนวนที่ต้องการให้แสดง มุมมองมีลักษณะดังนี้: <body ng-controller="PhoneListCtrl"> <div class="container-fluid"> <div class="row-fluid"> <div class="span2"> <!--Sidebar content--> Search: <input ng-model="query"> How Many: <input ng-model="quantity"> Sort by: <select ng-model="orderProp"> <option value="name">Alphabetical</option> <option value="age">Newest</option> </select> </div> <div class="span10"> <!--Body content--> <ul class="phones"> <li ng-repeat="phone in phones | filter:query | orderBy:orderProp"> {{phone.name}} <p>{{phone.snippet}}</p> </li> …

6
ขอบเขตกับแลมบ์ดาและการโต้แย้งในสไตล์ Rails 4 หรือไม่
ฉันสงสัยว่าจะทำสิ่งต่อไปนี้อย่างไรใน Rails 4 หรือถ้าฉันใช้ Rails 3 ในการใช้แลมบ์ดาที่สามารถทะเลาะกันด้วยวิธีเดียวกับ 4 เช่นเดียวกับ 3 ฉันค่อนข้างใหม่กับ Rails 3 และพยายามทำงานกับตัวอย่างบางส่วนที่ใช้งาน Rails 4 นี่คือรหัส Rails 3 ของฉัน: class Person < ActiveRecord::Base scope :find_lazy, lambda {|id| where(:id => id)} end # In console I can call Person.find_lazy(1) ดังนั้นถ้านี่คือ Rails 4 ทางคือใช้ -> {} นั่นคือแลมบ์ดาใช่ไหม? scope :all_lazy, -> { …

5
ตั้งค่าตัวแปร“ นี่” ได้อย่างง่ายดายหรือไม่
ฉันมีความเข้าใจ Javascript ค่อนข้างดียกเว้นว่าฉันไม่สามารถหาวิธีที่ดีในการตั้งค่าตัวแปร "this" พิจารณา: var myFunction = function(){ alert(this.foo_variable); } var someObj = document.body; //using body as example object someObj.foo_variable = "hi"; //set foo_variable so it alerts var old_fn = someObj.fn; //store old value someObj.fn = myFunction; //bind to someObj so "this" keyword works someObj.fn(); someObj.fn = old_fn; //restore …

28
เหตุใดจึงไม่มีการประกาศตัวแปรใน“ ลอง” ในขอบเขตใน“ จับ” หรือ“ ในที่สุด”?
ใน C # และใน Java (และภาษาอื่น ๆ ด้วย) ตัวแปรที่ประกาศในบล็อก "ลอง" ไม่ได้อยู่ในขอบเขตในบล็อก "catch" หรือ "สุดท้าย" ที่สอดคล้องกัน ตัวอย่างเช่นรหัสต่อไปนี้ไม่ได้รวบรวม: try { String s = "test"; // (more code...) } catch { Console.Out.WriteLine(s); //Java fans: think "System.out.println" here instead } ในรหัสนี้ข้อผิดพลาดเวลาคอมไพล์เกิดขึ้นในการอ้างอิงถึง s ใน catch block เนื่องจาก s อยู่ในขอบเขตในลองบล็อกเท่านั้น (ใน Java ข้อผิดพลาดในการคอมไพล์คือ "s ไม่สามารถแก้ไขได้" ใน …

7
Spring Java Config: คุณสร้าง @Bean ต้นแบบที่มีอาร์กิวเมนต์รันไทม์ได้อย่างไร
ด้วยการใช้ Java Config ของ Spring ฉันจำเป็นต้องได้รับ / สร้างอินสแตนซ์ถั่วที่กำหนดขอบเขตต้นแบบด้วยอาร์กิวเมนต์ตัวสร้างที่หาได้ในรันไทม์เท่านั้น พิจารณาตัวอย่างโค้ดต่อไปนี้ (ย่อให้สั้นลง): @Autowired private ApplicationContext appCtx; public void onRequest(Request request) { //request is already validated String name = request.getParameter("name"); Thing thing = appCtx.getBean(Thing.class, name); //System.out.println(thing.getName()); //prints name } โดยที่คลาส Thing ถูกกำหนดไว้ดังนี้: public class Thing { private final String name; @Autowired private SomeComponent …

9
ตัวแปรที่ประกาศใน for-loop เป็นตัวแปรภายในหรือไม่
ฉันใช้ C # มาเป็นเวลานาน แต่ไม่เคยตระหนักถึงสิ่งต่อไปนี้: public static void Main() { for (int i = 0; i < 5; i++) { } int i = 4; //cannot declare as 'i' is declared in child scope int A = i; //cannot assign as 'i' does not exist in this context } เหตุใดฉันจึงไม่สามารถใช้ค่า …
133 c#  variables  scope 

8
ฉันจะประกาศตัวแปรส่วนกลางใน VBA ได้อย่างไร
ฉันเขียนรหัสต่อไปนี้: Function find_results_idle() Public iRaw As Integer Public iColumn As Integer iRaw = 1 iColumn = 1 และฉันได้รับข้อความแสดงข้อผิดพลาด: "แอตทริบิวต์ที่ไม่ถูกต้องใน Sub หรือ Function" คุณรู้ไหมว่าฉันทำอะไรผิด? ฉันพยายามใช้GlobalแทนPublicแต่มีปัญหาเดียวกัน ฉันพยายามประกาศว่าฟังก์ชันนี้เป็นสาธารณะ แต่ก็ไม่ดีเช่นกัน ฉันต้องทำอย่างไรเพื่อสร้างตัวแปรส่วนกลาง

8
ตัวแปรส่วนกลางใน Javascript ในหลายไฟล์
รหัส JavaScript ของฉันจำนวนมากอยู่ในไฟล์ภายนอกชื่อ helpers.js ภายใน HTML ที่เรียกรหัส JavaScript นี้ฉันพบว่าตัวเองต้องการทราบว่ามีการเรียกใช้ฟังก์ชันบางอย่างจาก helpers.js หรือไม่ ฉันได้พยายามสร้างตัวแปรส่วนกลางโดยกำหนด: var myFunctionTag = true; ในขอบเขตทั่วโลกทั้งในโค้ด HTML และ helpers.js นี่คือลักษณะของรหัส html ของฉัน: <html> ... <script type='text/javascript' src='js/helpers.js'></script> ... <script> var myFunctionTag = false; ... //I try to use myFunctionTag here but it is always false, even though it has …

4
การสร้างโค้ดภายใน แต่ใช้สำหรับการทดสอบหน่วยจากโครงการอื่น
เราทำการทดสอบหน่วยของเราทั้งหมดในโครงการของตนเอง เราพบว่าเราต้องทำให้บางคลาสเป็นแบบสาธารณะแทนที่จะเป็นแบบภายในเพื่อการทดสอบหน่วย มีอยู่แล้วเพื่อหลีกเลี่ยงการทำเช่นนี้ อะไรคือความหมายของความทรงจำโดยการทำให้ชั้นเรียนเป็นแบบสาธารณะแทนที่จะถูกผนึก?
129 c#  unit-testing  scope 

2
ใน Java ประเภท enum อยู่ในคลาสคงที่หรือไม่
ดูเหมือนว่าฉันจะไม่สามารถเข้าถึงสมาชิกอินสแตนซ์ของคลาสโดยรอบจากภายใน enum ได้อย่างที่ฉันทำได้จากภายในคลาสภายใน หมายความว่า enums คงที่หรือไม่? มีการเข้าถึงขอบเขตของอินสแตนซ์ของคลาสโดยรอบหรือไม่หรือฉันต้องส่งอินสแตนซ์ไปยังเมธอดของ enum ที่ฉันต้องการ? public class Universe { public final int theAnswer; public enum Planet { // ... EARTH(...); // ... // ... constructor etc. public int deepThought() { // -> "No enclosing instance of type 'Universe' is accessible in this scope" return Universe.this.theAnswer; } …
123 java  enums  scope 

19
javascript: ฟังก์ชันนิรนามเรียกซ้ำ?
สมมติว่าฉันมีฟังก์ชันเรียกซ้ำพื้นฐาน: function recur(data) { data = data+1; var nothing = function() { recur(data); } nothing(); } ฉันจะทำสิ่งนี้ได้อย่างไรหากฉันมีฟังก์ชันที่ไม่ระบุตัวตนเช่น ... (function(data){ data = data+1; var nothing = function() { //Something here that calls the function? } nothing(); })(); ฉันต้องการวิธีเรียกฟังก์ชันที่เรียกฟังก์ชันนี้ ... ฉันเคยเห็นสคริปต์ที่ไหนสักแห่ง (จำไม่ได้ว่าที่ไหน) ที่สามารถบอกชื่อฟังก์ชันที่เรียกคุณได้ แต่ฉันจำไม่ได้ ข้อมูลนั้นในขณะนี้

4
สำหรับห่วงภายในวงเล็บปีกกาของตัวเอง
ฉันเจอเลย์เอาต์ for-loop นี้: #include <iostream> int main() { { for (int i = 0; i != 10; ++i) { std::cout << "delete i->second;" << std::endl; } } { for (size_t i = 0; i < 20; ++i) { std::cout << "delete m_indices[i];" << std::endl; } } return 0; } ฉันสงสัยว่าการจัดฟันชั้นพิเศษนี้มีไว้เพื่ออะไร? …
117 c++  for-loop  scope 

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