override-sample/include/libbase.h

1 ファイル

1.1 override-sample/include/libbase.h

ベースライブラリ (動的リンク用) のヘッダーファイル。

このライブラリは動的ライブラリのオーバーライド機能を示すサンプルです。

1.1.1 作者

c-modenization-kit sample team

1.1.2 バージョン

1.0.0

1.1.3 日付

2026/02/21

1.1.4 インクルード元

libbase.h のインクルード元

1.1.5 インクルード先

libbase.h のインクルード先

1.1.6 著作権

Copyright (C) CompanyName, Ltd. 2026. All rights reserved.

2 関数

2.1 sample_func

BASE_EXPORT int BASE_API sample_func ( const int a, const int b, int *result )

計算処理を行います。

2.1.1 引数

  • a [in] 第一オペランド。
  • b [in] 第二オペランド。
  • result [out] 計算結果を格納するポインタ。

2.1.2 戻り値

成功時は 0、失敗時は -1 を返します。

2.1.3 警告

result が NULL の場合は -1 を返します。

2.2 console_output

BASE_EXPORT void BASE_API console_output ( const char *format, ... )

printf と同じ書式でコンソールに出力します。

この関数は printf のラッパーです。
動的ライブラリ内から呼び出し元プロセスのコンソールに出力します。

2.2.1 引数

  • format [in] printf 互換の書式文字列。
  • … [in] 書式文字列に対応する引数。

2.2.2 使用例

console_output("result: %d\n", 42);  // 出力: result: 42

2.3 funcman_info_libbase

BASE_EXPORT int BASE_API funcman_info_libbase ( void )

libbase が管理する funcman_object ポインタ配列の内容を標準出力に表示します。

2.3.1 戻り値

すべてのエントリが正常に解決されている場合は 0、1 つでも失敗している場合は -1 を返します。

3 定数、マクロ

3.1 BASE_EXPORT

#define BASE_EXPORT

DLL エクスポート/インポート制御マクロ。

ビルド条件に応じて以下の値を取ります。

条件
Linux (非 Windows) (空)
Windows / __INTELLISENSE__ 定義時 (空)
Windows / BASE_STATIC 定義時 (静的リンク) (空)
Windows / BASE_EXPORTS 定義時 (DLL ビルド) __declspec(dllexport)
Windows / BASE_EXPORTS 未定義時 (DLL 利用側) __declspec(dllimport)

3.2 BASE_API

#define BASE_API

呼び出し規約マクロ。

Windows 環境では __stdcall 呼び出し規約を指定します。
Linux (非 Windows) 環境では空に展開されます。
既に定義済みの場合は再定義されません。