pthread関数への複数のパラメーターの受け渡しとアクセス

初心者

私はcppとスレッドの初心者です。pthread関数に複数の引数を渡すためにstackoverflowのいくつかのコードスニペットを参照し、以下のコードを思い付きました。渡された(void *)ポインターを使用して、関数内の構造体メンバーにアクセスする方法がわかりません。誰か説明できますか?

#include <iostream>
#include <pthread.h>
#include <vector>
using namespace std;

struct a{
vector <int> v1;
int val;
};

void* function(void *args)
{
 vector <int>functionvector = (vector <int>)args->v1;
 functionvector.push_back(args->val);
 return NULL;
}


int main()
{
  pthread_t thread;
  struct a args;

  pthread_create(&thread, NULL, &function, (void *)&args);
  pthread_join(thread,NULL);
  for(auto it : args.v1)
  {
    cout<<it;
   }

  return 0;
}

エラーの取得:エラー: 'void *'はオブジェクトへのポインタ型ではありません

ボー・パーソン

aキャストvoid*バックするまで、のメンバーにアクセスすることはできませんa*

void* function(void *ptr)
{
 a* args = static_cast<a*>(ptr);

 args->v1.push_back(args->val);
 return NULL;
}

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

Bash関数へのパラメーターの受け渡し

分類Dev

パラメータの受け渡しと関数内の割り当て、Java / androidのメモリリーク?

分類Dev

R関数、パラメーター名へのアクセス

分類Dev

C-参照と値による関数への構造パラメーターの受け渡し

分類Dev

関数へのパラメーターの受け渡しとキャスト

分類Dev

関数外の関数で作成されたパラメーターと変数へのアクセス(Python)

分類Dev

forループ受け渡しパラメーターの複数のonchange効果

分類Dev

Verilog関数へのパラメーターの受け渡し

分類Dev

C#のタスク:パラメーターとしての二重型関数の受け渡しエラー

分類Dev

フラスコ:あるルート/関数から別のルート/関数への辞書へのアクセスまたは受け渡し

分類Dev

svelte関数へのパラメーターの受け渡し

分類Dev

参照パラメーターを持つ関数へのポインターの受け渡し

分類Dev

匿名関数へのパラメーターの受け渡しJavascript

分類Dev

Cの関数へのパラメーターとしての構造体メンバーの受け渡し

分類Dev

関数へのパラメーターとしてのオブジェクトの受け渡し:MATLAB

分類Dev

決定論的変数pymcへのパラメーターの受け渡し

分類Dev

アドレス関数パラメータの受け渡しの問題でメモリにアクセスできません

分類Dev

SQL関数パラメーターの受け渡し

分類Dev

Jqueryフェードアウト関数へのパラメーターの受け渡し

分類Dev

PythonからR関数へのベクトルとパラメーターの受け渡し

分類Dev

解決関数へのパラメーターの受け渡し

分類Dev

Applescriptからターミナルコマンドスクリプトへの複数のパラメータの受け渡し

分類Dev

Matlab関数へのパラメーターの受け渡し

分類Dev

タイプXMVECTORの関数パラメーターの受け渡し

分類Dev

BASH関数へのパラメーターの受け渡し

分類Dev

ルーターミドルウェア関数へのパラメーターの受け渡し

分類Dev

xslt ノードを関数のパラメーターとして渡す (アクセスする)

分類Dev

関数へのパラメーターの受け渡し:エイリアスを使用する必要がありますか?

分類Dev

PostgreSQLとSSRS:PostgreSQL関数へのパラメーターの受け渡し

Related 関連記事

  1. 1

    Bash関数へのパラメーターの受け渡し

  2. 2

    パラメータの受け渡しと関数内の割り当て、Java / androidのメモリリーク?

  3. 3

    R関数、パラメーター名へのアクセス

  4. 4

    C-参照と値による関数への構造パラメーターの受け渡し

  5. 5

    関数へのパラメーターの受け渡しとキャスト

  6. 6

    関数外の関数で作成されたパラメーターと変数へのアクセス(Python)

  7. 7

    forループ受け渡しパラメーターの複数のonchange効果

  8. 8

    Verilog関数へのパラメーターの受け渡し

  9. 9

    C#のタスク:パラメーターとしての二重型関数の受け渡しエラー

  10. 10

    フラスコ:あるルート/関数から別のルート/関数への辞書へのアクセスまたは受け渡し

  11. 11

    svelte関数へのパラメーターの受け渡し

  12. 12

    参照パラメーターを持つ関数へのポインターの受け渡し

  13. 13

    匿名関数へのパラメーターの受け渡しJavascript

  14. 14

    Cの関数へのパラメーターとしての構造体メンバーの受け渡し

  15. 15

    関数へのパラメーターとしてのオブジェクトの受け渡し:MATLAB

  16. 16

    決定論的変数pymcへのパラメーターの受け渡し

  17. 17

    アドレス関数パラメータの受け渡しの問題でメモリにアクセスできません

  18. 18

    SQL関数パラメーターの受け渡し

  19. 19

    Jqueryフェードアウト関数へのパラメーターの受け渡し

  20. 20

    PythonからR関数へのベクトルとパラメーターの受け渡し

  21. 21

    解決関数へのパラメーターの受け渡し

  22. 22

    Applescriptからターミナルコマンドスクリプトへの複数のパラメータの受け渡し

  23. 23

    Matlab関数へのパラメーターの受け渡し

  24. 24

    タイプXMVECTORの関数パラメーターの受け渡し

  25. 25

    BASH関数へのパラメーターの受け渡し

  26. 26

    ルーターミドルウェア関数へのパラメーターの受け渡し

  27. 27

    xslt ノードを関数のパラメーターとして渡す (アクセスする)

  28. 28

    関数へのパラメーターの受け渡し:エイリアスを使用する必要がありますか?

  29. 29

    PostgreSQLとSSRS:PostgreSQL関数へのパラメーターの受け渡し

ホットタグ

アーカイブ