Создание .so и.a в UNIX

Правильно ли использовать a? пометить как Ruby в объявлении функции

Нет, языкового способа обозначения необязательного аргумента нет. Я определенно думаю, что это стоит указать в комментарии, однако:

function myFunc(var1, var2 /* optional */, var3 /* optional */) {
    if (var2===undefined) ...

(Обратите внимание на тройное равенство для точного тестирования на равенство. В противном случае переданное значение null также будет соответствовать. Обычно вы хотите, чтобы === для большинство сравнений в JS, так как двойное равенство нежелательно слабо типизировано.)

Поскольку, когда у вас есть неопределенное количество необязательных аргументов, вы обычно опускаете их в операторе функции, и снова комментарий вежливый:

function myFunc(var1 /* , optional var2..varN */) {
    for (var i= 1; i<arguments.length; i++) ...
9
задан Sachin Chourasiya 30 October 2009 в 05:52
поделиться

4 ответа

*. A - a библиотека rchive для его создания скомпилируйте свои исходники:

gcc -c -o foo.o foo.c
gcc -c -o boo.o boo.c

ar -rsc yourlib.a foo.o boo.o

итак - независимая от позиции разделяемая библиотека кода

gcc -fPIC -shared  -soname,libfoo.so.1 -o libfoo.so.1.0 foo.c boo.c
11
ответ дан 4 December 2019 в 13:02
поделиться
#create shared library
gcc -Os -fPIC -c test.c
gcc -shared  test.so test.o 


#create static library
gcc -Os -c test.c
ar rcs test.a test.o
3
ответ дан 4 December 2019 в 13:02
поделиться

.a также называется статической библиотекой, а .so также называется динамически загружаемой библиотекой.

Мне нравится Program Library HOWTO .

Этот HOWTO для программистов обсуждает как создать и использовать программу библиотеки в Linux. Это включает в себя статические библиотеки, разделяемые библиотеки, и динамически загружаемые библиотеки.

Учебник Yo Linux также полезен.

В этом руководстве обсуждается философия за библиотеками и созданием и использование библиотеки C / C ++ "общий компоненты »и« плагины ». различные технологии и методики используется и понимание их соответствующих приложение, также обсуждается. В в этом руководстве все библиотеки создан с использованием компилятора GNU Linux.

2
ответ дан 4 December 2019 в 13:02
поделиться

Взгляните на этот Makefile , который я написал, когда был новичком в C. Он ясно показывает, как сгенерировать и правильно связать .a и .so файлы из простого демонстрационного источника .

0
ответ дан 4 December 2019 в 13:02
поделиться
Другие вопросы по тегам:

Похожие вопросы: