Используя C кодируют от автоинструментов использования C++

Основываясь на ответе bigless, я думаю, что вы могли бы создать функцию проверки JavaScript для проверки формы, таким образом, вы могли бы использовать кнопку сброса типа и код this.form.reset (), как показано ниже:

[ 110]
5
задан drkatz 8 February 2009 в 21:43
поделиться

4 ответа

Да создают заголовочные файлы обертки, которые включают Ваши заголовочные файлы C как так...

//Wrapper.h
#ifdef __cplusplus
extern "C"
{

    #include "Actual.h"
}
#else
    #include "Actual.h"
#endif


//Use.cpp
#include "Wrapper.h"

int main()
{
    return 0;
}

//Use.c
#include "Wrapper.h"
/*or #include "Actual.h" */

int main()
{
    return 0;
}
3
ответ дан 18 December 2019 в 07:57
поделиться

Используйте блок экстерна в #ifdef в заголовочных файлах кодов C

Запустите заголовочных файлов

#ifdef __cplusplus
extern "C" {
#endif

... и в конце заголовочных файлов

#ifdef __cplusplus
}
#endif

Таким образом, это будет работать на то, что было включено и в C и в источники C++

15
ответ дан 18 December 2019 в 07:57
поделиться

Используйте Препроцессор C. Сделайте что-то вроде этого:

 #ifdef __cplusplus
 extern "C" {
 #endif 
// code goes here

#ifdef __cplusplus
}
#endif
1
ответ дан 18 December 2019 в 07:57
поделиться

У нас есть макрос в заголовочном файле:

#ifdef __cplusplus
    #define _crtn "C"
#else
    #define _crtn
#endif

Затем в заголовочных файлах, мы можем использовать _crtn:

#include "croutine.h"

extern _crtn void MyFunction( ... );

Единственный глюк должен удостовериться, что Вы включаете заголовочный файл, содержащий прототип MyFunction в файле, содержащем реализацию MyFunction так, чтобы это было скомпилировано с "C" связью.

Это совпадает с ответом @epatel, но только требует ужасного #ifdefв одном заголовочном файле.

1
ответ дан 18 December 2019 в 07:57
поделиться