การเขียนโปรแกรม

คำถาม & คำตอบสำหรับโปรแกรมเมอร์มืออาชีพและกระตือรือร้น

5
อะไรคือความแตกต่างระหว่าง“ STL” และ“ ไลบรารีมาตรฐาน C ++”?
มีคนนำบทความนี้ไปสู่ความสนใจของฉันที่อ้างว่า(ฉันถอดความ)คำ STL ถูกนำไปใช้ในทางที่ผิดเพื่ออ้างถึงทั้งห้องสมุดมาตรฐาน C ++ แทนส่วนที่นำมาจาก SGI STL (... ) มันหมายถึง "STL" แม้จะมีคนเพียงไม่กี่คนที่ยังใช้ STL (ซึ่งได้รับการออกแบบที่ SGI) บางส่วนของ C ++ Standard Library นั้นขึ้นอยู่กับส่วนของ STL และเป็นส่วนเหล่านี้ที่หลายคน (รวมถึงผู้แต่งหลายคนและ cplusplus.com ซึ่งมีข้อผิดพลาดอย่างฉาวโฉ่ยังคงเรียกว่า "the STL" อย่างไรก็ตามนี่ไม่ถูกต้อง จริง ๆ แล้วมาตรฐาน C ++ ไม่เคยกล่าวถึง "STL" และมีความแตกต่างของเนื้อหาระหว่างทั้งสอง (... ) "STL" ไม่ค่อยถูกใช้เพื่ออ้างถึงบิตของ stdlib ที่เกิดขึ้นกับ SGI STL ผู้คนคิดว่ามันเป็นห้องสมุดมาตรฐานทั้งหมด มันได้รับการใส่ CV และมันก็ทำให้เข้าใจผิด …

18
วิธีการเรียงลำดับของอาร์เรย์ที่เชื่อมโยงโดยค่าของคีย์ที่กำหนดใน PHP?
รับอาร์เรย์นี้: $inventory = array( array("type"=>"fruit", "price"=>3.50), array("type"=>"milk", "price"=>2.90), array("type"=>"pork", "price"=>5.43), ); ฉันต้องการเรียงลำดับ$inventoryองค์ประกอบตามราคาเพื่อรับ: $inventory = array( array("type"=>"pork", "price"=>5.43), array("type"=>"fruit", "price"=>3.50), array("type"=>"milk", "price"=>2.90), ); ฉันจะทำสิ่งนี้ได้อย่างไร

14
เหตุใดฟิลด์ส่วนใหญ่ (สมาชิกคลาส) ในการกวดวิชา Android เริ่มต้นด้วย `m`
ฉันรู้เกี่ยวกับกฎกรณีอูฐ แต่ฉันสับสนกับกฎมนี้ มันหมายถึงอะไร ฉันเป็นนักพัฒนา PHP "เรา" ใช้ตัวอักษรตัวแรกของตัวแปรเป็นตัวบ่งชี้ชนิดเช่น 'b' สำหรับบูลีน 'i' สำหรับจำนวนเต็มเป็นต้น เป็น 'm' สิ่ง Java หรือไม่ มันยืนสำหรับมือถือ? ผสม?

6
Mockito สามารถจับข้อโต้แย้งของวิธีที่เรียกหลาย ๆ ครั้งได้หรือไม่?
ฉันมีวิธีที่ได้รับการเรียกสองครั้งและฉันต้องการจับอาร์กิวเมนต์ของการเรียกใช้เมธอดที่สอง นี่คือสิ่งที่ฉันได้ลอง: ArgumentCaptor<Foo> firstFooCaptor = ArgumentCaptor.forClass(Foo.class); ArgumentCaptor<Foo> secondFooCaptor = ArgumentCaptor.forClass(Foo.class); verify(mockBar).doSomething(firstFooCaptor.capture()); verify(mockBar).doSomething(secondFooCaptor.capture()); // then do some assertions on secondFooCaptor.getValue() แต่ฉันได้รับTooManyActualInvocationsข้อยกเว้นเนื่องจาก Mockito คิดว่าdoSomethingควรเรียกเพียงครั้งเดียว ฉันจะตรวจสอบข้อโต้แย้งของการโทรครั้งที่สองได้doSomethingอย่างไร?

3
มีผู้ประกอบการที่ประกอบไปด้วยเงื่อนไขใน VB.NET หรือไม่?
ใน Perl (และภาษาอื่น ๆ ) ผู้ประกอบการที่มีเงื่อนไขสามารถแสดงได้ดังนี้: my $foo = $bar == $buz ? $cat : $dog; มีผู้ประกอบการที่คล้ายกันใน VB.NET หรือไม่?

9
ไฟล์ CSV ที่เขียนด้วย Python มีบรรทัดว่างระหว่างแต่ละแถว
import csv with open('thefile.csv', 'rb') as f: data = list(csv.reader(f)) import collections counter = collections.defaultdict(int) for row in data: counter[row[10]] += 1 with open('/pythonwork/thefile_subset11.csv', 'w') as outfile: writer = csv.writer(outfile) for row in data: if counter[row[10]] >= 504: writer.writerow(row) รหัสนี้อ่านthefile.csv, thefile_subset1ทำให้เกิดการเปลี่ยนแปลงและเขียนผล อย่างไรก็ตามเมื่อฉันเปิด csv ที่ได้ใน Microsoft Excel จะมีบรรทัดว่างเพิ่มเติมหลังจากบันทึกแต่ละชุด! มีวิธีทำให้ไม่ใส่บรรทัดว่างพิเศษหรือไม่?
446 python  windows  csv 

8
คำหลัก“ __block” หมายถึงอะไร
สิ่งที่ว่าไม่__blockคำหลักใน Objective-C หมายถึง? ฉันรู้ว่ามันช่วยให้คุณสามารถปรับเปลี่ยนตัวแปรภายในบล็อกได้ แต่ฉันอยากรู้ว่า ... มันบอกอะไรกับคอมไพเลอร์? มันทำอะไรอย่างอื่นได้ไหม? หากเป็นเช่นนั้นแล้วทำไมจึงเป็นสิ่งจำเป็นในตอนแรก มันอยู่ในเอกสารทุกที่หรือไม่? (หาไม่เจอ)

21
วิธีการแสดง Toast ใน Android
ฉันมีตัวเลื่อนที่สามารถดึงขึ้นมาแล้วแสดงแผนที่ ฉันสามารถเลื่อนตัวเลื่อนขึ้นและลงเพื่อซ่อนหรือแสดงแผนที่ เมื่อแผนที่อยู่ข้างหน้าฉันสามารถจัดการเหตุการณ์การสัมผัสบนแผนที่นั้นได้ ทุกครั้งที่ฉันสัมผัส a AsyncTaskจะถูกไฟขึ้นมันจะดาวน์โหลดข้อมูลบางส่วนและสร้างToastข้อมูลนั้น แม้ว่าฉันจะเริ่มงานในกิจกรรมการสัมผัสแล้วไม่มีขนมปังแสดงให้เห็นจนกระทั่งฉันปิดตัวเลื่อน เมื่อตัวเลื่อนปิดและแผนที่จะไม่ปรากฏอีกต่อไปToastปรากฏขึ้น ความคิดใด ๆ เริ่มงานกันดีกว่า แก้ไข: public boolean onTouchEvent(MotionEvent event, MapView mapView){ if (event.getAction() == 1) { new TestTask(this).execute(); return true; }else{ return false; } } และonPostExecuteทำขนมปัง Toast.makeText(app.getBaseContext(),(String)data.result, Toast.LENGTH_SHORT).show(); ในใหม่TestTask(this)นี่คือการอ้างอิงถึงMapOverlayและไม่ได้MapActivityดังนั้นนี่คือปัญหา

7
จุดของตัวดำเนินการไดมอนด์ (<>) ใน Java 7 คืออะไร
ตัวดำเนินการไดมอนด์ใน java 7 อนุญาตให้ใช้โค้ดดังนี้: List&lt;String&gt; list = new LinkedList&lt;&gt;(); อย่างไรก็ตามใน Java 5/6 ฉันสามารถเขียน: List&lt;String&gt; list = new LinkedList(); ความเข้าใจของฉันเกี่ยวกับการลบประเภทคือสิ่งเหล่านี้เหมือนกันทุกประการ (ทั่วไปจะถูกลบออกที่รันไทม์อยู่แล้ว) ทำไมต้องกังวลกับเพชรเลย? ฟังก์ชั่น / ประเภทความปลอดภัยใหม่อนุญาตให้มีอะไรบ้าง ถ้ามันไม่ได้ผลการทำงานใหม่ ๆ ทำไมพวกเขาพูดถึงมันเป็นคุณสมบัติ? ความเข้าใจของฉันเกี่ยวกับแนวคิดนี้มีข้อบกพร่องหรือไม่

19
ป้องกันการเลื่อนของร่างกาย แต่อนุญาตให้เลื่อนภาพซ้อนทับ
ฉันค้นหาโซลูชันประเภท "lightbox" ที่อนุญาตสิ่งนี้ แต่ยังไม่พบโซลูชัน (โปรดแนะนำถ้าคุณรู้ว่ามี) พฤติกรรมที่ฉันพยายามสร้างขึ้นใหม่ก็เหมือนกับสิ่งที่คุณเห็นที่Pinterestเมื่อคลิกที่ภาพ ภาพซ้อนทับสามารถเลื่อนได้ ( เช่นเดียวกับภาพซ้อนทับทั้งหมดเลื่อนขึ้นเหมือนหน้าบนสุดของหน้า ) แต่เนื้อความด้านหลังภาพซ้อนได้รับการแก้ไข ฉันพยายามสร้างสิ่งนี้ด้วย CSS ( เช่นdivภาพซ้อนทับด้านบนของทั้งหน้าและเนื้อหาoverflow: hidden ) แต่มันไม่ได้ป้องกันไม่ให้divเลื่อนได้ วิธีการป้องกันไม่ให้ร่างกาย / หน้าเลื่อน แต่ยังคงเลื่อนภายในภาชนะเต็มหน้าจอ?
446 css  overlay  lightbox 

30
Regex สำหรับรหัสผ่านจะต้องมีอย่างน้อยแปดตัวอักษรอย่างน้อยหนึ่งหมายเลขและทั้งตัวอักษรตัวเล็กและตัวพิมพ์ใหญ่และตัวอักษรพิเศษ
ฉันต้องการแสดงออกปกติเพื่อตรวจสอบว่า: รหัสผ่านที่มีอย่างน้อยแปดตัวอักษรรวมทั้งจำนวนอย่างน้อยหนึ่งและรวมทั้งตัวอักษรที่ต่ำกว่าและตัวพิมพ์ใหญ่และตัวอักษรพิเศษเช่น#, ,?! ไม่สามารถเป็นรหัสผ่านเก่าของคุณหรือมีชื่อผู้ใช้"password"หรือ"websitename" และนี่คือนิพจน์การตรวจสอบความถูกต้องของฉันซึ่งมีความยาวแปดตัวอักษรรวมถึงตัวอักษรตัวพิมพ์ใหญ่หนึ่งตัวอักษรตัวพิมพ์เล็กหนึ่งตัวและตัวเลขหนึ่งตัวหรืออักขระพิเศษ (?=^.{8,}$)((?=.*\d)|(?=.*\W+))(?![.\n])(?=.*[A-Z])(?=.*[a-z]).*$" ฉันจะเขียนให้รหัสผ่านต้องมีแปดตัวอักษรรวมถึงอักษรตัวพิมพ์ใหญ่หนึ่งหนึ่งอักขระพิเศษและตัวเลขและตัวอักษร ?

13
ฉันจะเขียน dispatch_after GCD ใน Swift 3, 4 และ 5 ได้อย่างไร
ใน Swift 2 ฉันสามารถใช้dispatch_afterเพื่อหน่วงเวลาการดำเนินการโดยใช้การส่งศูนย์กลางใหญ่: var dispatchTime: dispatch_time_t = dispatch_time(DISPATCH_TIME_NOW, Int64(0.1 * Double(NSEC_PER_SEC))) dispatch_after(dispatchTime, dispatch_get_main_queue(), { // your function here }) แต่ตอนนี้ดูเหมือนว่าจะไม่รวบรวมอีกต่อไปตั้งแต่ Swift 3 วิธีที่ดีที่สุดในการเขียนสิ่งนี้ใน Swift ยุคใหม่คืออะไร?

8
Tomcat, JBoss และ Glassfish ต่างกันอย่างไร
ฉันเริ่มมองหา Enterprise Java และหนังสือที่ฉันกำลังกล่าวถึงว่าจะใช้ JBoss Netbeans มาพร้อมกับ Glassfish ฉันเคยใช้ Tomcat มาแล้ว โปรแกรมทั้งสามนี้มีความแตกต่างกันอย่างไร?

23
วิธีง่ายๆในการเขียนเนื้อหาของ Java InputStream ไปยัง OutputStream
ฉันประหลาดใจที่พบว่าวันนี้ฉันไม่สามารถติดตามวิธีง่ายๆในการเขียนเนื้อหาของ a InputStreamไปยังOutputStreamใน Java เห็นได้ชัดว่ารหัสบัฟเฟอร์ไบต์ไม่ยากที่จะเขียน แต่ฉันสงสัยว่าฉันเพิ่งหายไปบางสิ่งบางอย่างที่จะทำให้ชีวิตของฉันง่ายขึ้น (และรหัสชัดเจนขึ้น) ดังนั้นเมื่อได้รับInputStream inและOutputStream outมีวิธีที่ง่ายกว่าในการเขียนต่อไปนี้หรือไม่? byte[] buffer = new byte[1024]; int len = in.read(buffer); while (len != -1) { out.write(buffer, 0, len); len = in.read(buffer); }
445 java  io  stream 

18
AngularJS 1.2 $ หัวฉีด: modulerr
เมื่อใช้ angular 1.2 แทนที่จะเป็น 1.07 โค้ดต่อไปนี้ไม่ถูกต้องอีกต่อไปทำไม? 'use strict'; var app = angular.module('myapp', []); app.config(['$routeProvider', '$locationProvider', function($routeProvider, $locationProvider) { $locationProvider.html5Mode(true); $routeProvider. when('/', { templateUrl: 'part.html', controller: 'MyCtrl' }). otherwise({ redirectTo: '/' }); } ]); ปัญหาอยู่ในส่วนกำหนดค่าหัวฉีด (app.config): Uncaught Error: [$injector:modulerr] http://errors.angularjs.org/1.2.0rc1/$injector/modulerr?p0=muninn&amp;p1=Error%…eapis.com%2Fajax%2Flibs%2Fangularjs%2F1.2.0rc1%2Fangular.min.js%3A31%3A252) ถ้าฉันจำได้ถูกต้องปัญหานี้เริ่มต้นด้วย angular 1.1.6

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