前提・実現したいこと
関数宣言系のみをheaderに残しcppで関数定義して作成したつもりですが定義されていない
というエラーが表示されます.headerのincludeの方法がまずいのでしょうか.それとも#define WIN32_LEAN_AND_MEAN
が影響を与えているのでしょうか.
また自作headerの関数宣言のために書いた<Windows.h>などは自作headerの定義cppファイルで再び書き直すべきでしょうか.
errorまでは出しませんが#define UNICODE
等のdefineも#ifdefで一度のみの定義にすべきですか?
発生している問題・エラーメッセージ
E0020 識別子 "free" が定義されていません CommThread.cpp E0020 識別子 "calloc" が定義されていません CommThread.cpp E0020 識別子 "free" が定義されていません CommThread.cpp E0020 識別子 "free" が定義されていません CommThread.cpp
該当のソース(冒頭include系のみ)
C
1//main.cpp 2#define UNICODE 3 4#include <Windows.h> 5#include <process.h> 6#include "CommThread.h"
C
1//CommThread.h 2#pragma once 3 4#define UNICODE 5#include <Windows.h>
C
1//CommThread.cpp 2#define UNICODE 3#define WIN32_LEAN_AND_MEAN 4 5#include "CommThread.h" 6#include "SocketError.h" 7#include <Windows.h> 8#include <WinSock2.h> 9#include <ws2tcpip.h> 10#include <process.h> 11#pragma comment(lib,"ws2_32.lib")
C
1//SocketError.h 2#pragma once 3#include <Windows.h>
C
1//SocketError.cpp 2#define WIN32_LEAN_AND_MEAN 3 4#include "SocketError.h" 5#include <Windows.h> 6#include <WinSock2.h>
必要であれば多いですがコード全文GitHubにでも上げます.
補足情報
Windows10 Pro
VisualStudio2019 Community
回答2件
あなたの回答
tips
プレビュー