回答編集履歴
2
追記2
answer
CHANGED
@@ -1,7 +1,32 @@
|
|
1
|
+
(追記2)
|
2
|
+
試してみてコンパイルが通ったので、コードを載せておきます。
|
3
|
+
```c++
|
4
|
+
class scandirTest
|
5
|
+
{
|
6
|
+
public:
|
7
|
+
void callScandir(void){
|
8
|
+
struct dirent **namelist;
|
9
|
+
int i, ndev;
|
10
|
+
ndev = scandir("/dev/input", &namelist, is_event_device, NULL);
|
11
|
+
}
|
12
|
+
private:
|
13
|
+
static int is_event_device(const struct dirent *dir){
|
14
|
+
return strncmp("event", dir->d_name, 5) == 0;
|
15
|
+
}
|
16
|
+
};
|
17
|
+
|
18
|
+
int main(void){
|
19
|
+
class scandirTest *p = new scandirTest();
|
20
|
+
p->callScandir();
|
21
|
+
}
|
22
|
+
|
23
|
+
```
|
24
|
+
(追記1)
|
1
25
|
すみません、良く調べずに回答してしまいました。
|
2
26
|
is_event_deviceはscandirのコールバックとして登録するのですね。
|
3
27
|
出直します・・・。
|
4
28
|
|
29
|
+
|
5
30
|
以下は忘れてください。
|
6
31
|
|
7
32
|
クラスの宣言部分を追記いただいた方が、より良い回答が得られると思います。
|
1
追記
answer
CHANGED
@@ -1,3 +1,9 @@
|
|
1
|
+
すみません、良く調べずに回答してしまいました。
|
2
|
+
is_event_deviceはscandirのコールバックとして登録するのですね。
|
3
|
+
出直します・・・。
|
4
|
+
|
5
|
+
以下は忘れてください。
|
6
|
+
|
1
7
|
クラスの宣言部分を追記いただいた方が、より良い回答が得られると思います。
|
2
8
|
|
3
9
|
勘ですが、そもそもis_event_device関数に渡している変数が間違っていませんか?
|