プログラミング

プロおよび熱狂的プログラマーのためのQ&A



2
Git:他のリモートからプル
GitHubのプロジェクトからフォークを作成しました。フォークしたプロジェクトから変更をプルするにはどうすればよいですか?
183 git  github 

5
連続しない2つのコミットをどのように押しつぶすのですか?
私はgit内のリベース機能全体に少し慣れていません。私が次のコミットをしたとしましょう: A -> B -> C -> D その後、にD追加されたいくつかの新しいコードに依存する修正が含まれていることA、およびこれらのコミットが一緒に属していることに気付きました。どのように私はつぶすんA&D一緒に休暇B&C一人で?
183 git  git-rebase 

9
C ++で列挙型を宣言するときにtypedefを使用するのはなぜですか?
私は何年もC ++を書いていないので、今はそれを取り戻そうとしています。それから私はこれに遭遇し、あきらめることを考えました: typedef enum TokenType { blah1 = 0x00000000, blah2 = 0X01000000, blah3 = 0X02000000 } TokenType; これは何ですか?typedefここでキーワードが使用されているのはなぜですか?TokenTypeこの宣言で名前が2回表示されるのはなぜですか?これとセマンティクスはどのように違うのですか? enum TokenType { blah1 = 0x00000000, blah2=0x01000000, blah3=0x02000000 };
183 c++  enums  typedef 

2
なぜ「これ」はポインタであり、参照ではないのですか?
私はこの質問C ++の賛否両論の回答を読んでいて、コメントを読んでいるときにこの疑問を感じました。 プログラマは、「これ」がポインタであり、参照ではないことを混乱させることがよくあります。"hello"がstd :: string型ではないが、char const *(ポインター)に評価される理由は別の混乱です(配列からポインターへの変換後)– Johannes Schaub-litb Dec 22 '08 at 22:56 これは、他の(後の)言語と同じ規則を使用していないことを示しています。– le dorfier 2008年12月22日3:35 私は「これ」のものをかなり些細な問題と呼びます。そして、おっと、私の未定義の動作の例でいくつかのエラーをキャッチしてくれてありがとう。:)私はサイズに関する情報が最初のもので何と関係があるのか​​理解していませんが。ポインターは、割り当てられたメモリの外を指すことは許可されていません。 これは絶え間ないpoinerですか?– yesraaj 2008年12月22日6:35 メソッドがconst int getFoo()constの場合、これは定数にすることができます。<-getFooのスコープでは、「this」は定数なので、読み取り専用です。これにより、バグが防止され、オブジェクトが変更されないことがある程度保証されます。– Doug T. Dec 22 '08 at 16:42 「これ」を再割り当てすることはできません。つまり、これは右辺値であるため、「this =&other;」を実行できません。これはタイプT *であり、タイプT constではありません。つまり、それは非定数ポインターです。constメソッドを使用している場合は、constへのポインタです。T const。しかし、ポインタ自体は非定数です– Johannes Schaub-litb '08 / 12/22 17:53 「this」は次のように考えてください。#define this(this_ + 0)は、コンパイラが「this_」をオブジェクトへのポインタとして作成し、「this」をキーワードにします。(this_ + 0)は右辺値なので、「this」を割り当てることはできません。もちろん、それはそうではありません(そのようなマクロはありません)が、それを理解するのに役立ちます– Johannes …

8
EclipseへのMavenプロジェクトのインポート
既存のMavenプロジェクトをEclipseにインポートしたい。私はそれを行う2つの方法を見つけました: コマンドラインから実行する mvn eclipse:eclipse EclipseからMaven Eclipseプラグインをインストールするには。 両者の違いは何ですか?どちらが望ましいですか? Eclipseメニューの[ ヘルプ ] -> [新しいソフトウェアをインストール ]からMaven Eclipseプラグインをインストールした場合でもpom.xml、プラグインセクションにMaven Eclipseプラグインを含めるように変更する必要がありますか?
183 eclipse  maven-2 

2
ストリームバッファをutf8-stringに変換する
node.jsを使用してHTTPリクエストを作成し、ウェブサーバーからテキストを読み込みたいのですが。応答には多くのテキスト(数メガバイト)を含めることができるため、各テキストチャンクを個別に処理したいと考えています。次のコードを使用してこれを実現できます。 var req = http.request(reqOptions, function(res) { ... res.setEncoding('utf8'); res.on('data', function(textChunk) { // process utf8 text chunk }); }); これは問題なく動作しているようです。ただし、HTTP圧縮をサポートするため、zlibを使用します。 var zip = zlib.createUnzip(); // NO res.setEncoding('utf8') here since we need the raw bytes for zlib res.on('data', function(chunk) { // do something like checking the number of bytes downloaded zip.write(chunk); …
183 node.js 

4
WPF ComboBoxをカスタムリストにバインドする
SelectedItem / SelectedValueを更新していないように見えるComboBoxがあります。 ComboBox ItemsSourceは、一連のRAS電話帳エントリをCollectionViewとしてリストするViewModelクラスのプロパティにバインドされています。次に、ViewModelのSelectedItemまたはSelectedValue別のプロパティに(別々に)バインドしました。データバインディングによって設定された値をデバッグするために、saveコマンドにメッセージボックスを追加しましたが、SelectedItem/ SelectedValueバインディングが設定されていません。 ViewModelクラスは次のようになります。 public ConnectionViewModel { private readonly CollectionView _phonebookEntries; private string _phonebookeEntry; public CollectionView PhonebookEntries { get { return _phonebookEntries; } } public string PhonebookEntry { get { return _phonebookEntry; } set { if (_phonebookEntry == value) return; _phonebookEntry = value; OnPropertyChanged("PhonebookEntry"); } } } …
183 c#  wpf  data-binding  mvvm  combobox 

12
CountDownLatchはJavaマルチスレッドでどのように使用されますか?
誰かが私にJava CountDownLatchとは何か、いつそれを使用するかを理解するのを手伝ってくれる? このプログラムがどのように機能するのか、私にはよくわかりません。私が理解しているように、3つのスレッドすべてが一度に開始し、各スレッドは3000ms後にCountDownLatchを呼び出します。したがって、カウントダウンは1つずつ減少します。ラッチがゼロになった後、プログラムは「完了」と出力します。多分私が理解した方法は間違っています。 import java.util.concurrent.CountDownLatch; import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors; class Processor implements Runnable { private CountDownLatch latch; public Processor(CountDownLatch latch) { this.latch = latch; } public void run() { System.out.println("Started."); try { Thread.sleep(3000); } catch (InterruptedException e) { e.printStackTrace(); } latch.countDown(); } } // ------------------------------------------------ ----- public class App { …

7
再帰的ロック(Mutex)と非再帰的ロック(Mutex)
POSIXでは、ミューテックスを再帰的にすることができます。つまり、同じスレッドが同じミューテックスを2回ロックしても、デッドロックは発生しません。もちろん、2回アンロックする必要もあります。そうしないと、他のスレッドがミューテックスを取得できません。pthreadをサポートするすべてのシステムが再帰的ミューテックスもサポートするわけではありませんが、POSIX準拠にしたい場合は、そうする必要があります。 他のAPI(より高レベルのAPI)も、通常はロックと呼ばれるミューテックスを提供します。一部のシステム/言語(Cocoa Objective-Cなど)では、再帰的mutexと非再帰的mutexの両方を提供しています。一部の言語では、どちらか一方しか提供されません。たとえば、Javaミューテックスは常に再帰的です(同じオブジェクトで同じスレッドが2回「同期」する場合があります)。それらが提供する他のスレッド機能によっては、再帰的ミューテックスは自分で簡単に記述できるため、再帰ミューテックスがなくても問題ない場合があります(私は、より単純なミューテックス/条件操作に基づいて、自分で再帰的ミューテックスをすでに実装しています)。 私が本当に理解していないこと:非再帰的mutexは何に適していますか?同じミューテックスを2回ロックする場合、なぜスレッドデッドロックが必要なのですか?それを回避できる高水準言語(たとえば、デッドロックが発生するかどうかをテストし、発生する場合は例外をスローする)でも、通常はそうしません。代わりにスレッドをデッドロックさせます。 これは、誤って2回ロックして1回だけロック解除した場合にのみ発生します。再帰的なmutexの場合、問題を見つけるのは難しくなります。そのため、すぐにデッドロックして、間違ったロックがどこにあるかを確認できますか?しかし、ロックを解除するときにロックカウンターを返すのと同じことはできませんでした。最後のロックを解放し、カウンターがゼロではない場合、例外をスローしたり、問題をログに記録したりできます。または、私が確認できない他のより有用な非再帰的ミューテックスのユースケースはありますか?それとも、非再帰的なミューテックスは再帰的なミューテックスよりもわずかに高速になる可能性があるため、それは単にパフォーマンスかもしれませんか?しかし、私はこれをテストしましたが、違いは実際にはそれほど大きくありません。

2
argparseを使用して2つの引数のいずれかを要求する
与えられた: import argparse pa = argparse.ArgumentParser() pa.add_argument('--foo') pa.add_argument('--bar') print pa.parse_args('--foo 1'.split()) どうやって 「foo、bar」の少なくとも1つを必須にする:--foo x、--bar yおよび--foo x --bar y問題ありません せいぜい「foo、bar」の1つを必須にする--foo xか--bar y、問題--foo x --bar yありません。
183 python  argparse 

19
UITableViewがReloadDataを完了したことを確認する方法は?
実行が完了した後、UITableViewの一番下までスクロールしようとしています [self.tableView reloadData] 私はもともと持っていました [self.tableView reloadData] NSIndexPath* indexPath = [NSIndexPath indexPathForRow: ([self.tableView numberOfRowsInSection:([self.tableView numberOfSections]-1)]-1) inSection: ([self.tableView numberOfSections]-1)]; [self.tableView scrollToRowAtIndexPath:indexPath atScrollPosition:UITableViewScrollPositionBottom animated:YES]; しかし、私はreloadDataが非同期であるため、スクロールは以来起こらないことを読んでself.tableView、[self.tableView numberOfSections]そして[self.tableView numberOfRowsinSectionすべて0です。 ありがとう! 奇妙なのは私が使っていることです: [self.tableView reloadData]; NSLog(@"Number of Sections %d", [self.tableView numberOfSections]); NSLog(@"Number of Rows %d", [self.tableView numberOfRowsInSection:([self.tableView numberOfSections]-1)]-1); コンソールでは、セクション= 1、行= -1を返します。 でまったく同じNSLogを実行するcellForRowAtIndexPathと、Sections = 1およびRow = 8になります。(8が正しい)

11
Javaで定期的なタスクをスケジュールする方法は?
一定の時間間隔で実行するようにタスクをスケジュールする必要があります。長い間隔(たとえば、8時間ごと)をサポートしてこれを行うにはどうすればよいですか? 現在を使用していjava.util.Timer.scheduleAtFixedRateます。DOESは、java.util.Timer.scheduleAtFixedRate長い時間間隔をサポートしていますか?

8
分割された文字列配列の最後の要素を取得する
複数のセパレーターを持つ分割配列の最後の要素を取得する必要があります。区切り文字はカンマとスペースです。セパレータがない場合は、元の文字列を返します。 文字列が「今日、どのようにしていますか?」ですか。「今日?」 入力が「hello」の場合、出力は「hello」になります。 JavaScriptでこれを行うにはどうすればよいですか?
183 javascript  split 

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.