Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Как в C из структуры вызывать функцию не задавая аргумент структуры?
|
|||
|---|---|---|---|
|
#18+
Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. Теперь как можно вызывать функцию таким образом persons.add(newPerson) а не таким persons.add(newPerson,&persons) ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.12.2012, 18:04 |
|
||
|
Как в C из структуры вызывать функцию не задавая аргумент структуры?
|
|||
|---|---|---|---|
|
#18+
Вообще-то процедуры могут иметь методы, не только указатели на функции... Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.12.2012, 19:25 |
|
||
|
Как в C из структуры вызывать функцию не задавая аргумент структуры?
|
|||
|---|---|---|---|
|
#18+
Это в C++ могут, а в C ругается на синтакс. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.12.2012, 19:34 |
|
||
|
Как в C из структуры вызывать функцию не задавая аргумент структуры?
|
|||
|---|---|---|---|
|
#18+
sergei123Это в C++ могут, а в C ругается на синтакс. Это правильный ответ. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.12.2012, 19:52 |
|
||
|
Как в C из структуры вызывать функцию не задавая аргумент структуры?
|
|||
|---|---|---|---|
|
#18+
Anatoly Moskovsky, Понятно, а по-другому никак? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.12.2012, 20:32 |
|
||
|
Как в C из структуры вызывать функцию не задавая аргумент структуры?
|
|||
|---|---|---|---|
|
#18+
sergei123, Язык С (в 99%) делает только то, что ему указал программист. Если аргумент не передали, то компилятор его туда никак не подставит. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.12.2012, 20:37 |
|
||
|
Как в C из структуры вызывать функцию не задавая аргумент структуры?
|
|||
|---|---|---|---|
|
#18+
sergei123, Использовать статический массив и напрямую обращаться к нему. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.01.2013, 22:00 |
|
||
|
Как в C из структуры вызывать функцию не задавая аргумент структуры?
|
|||
|---|---|---|---|
|
#18+
Теперь как можно вызывать функцию таким образом persons.add(newPerson) а не таким persons.add(newPerson,&persons) ? никак, ты обязан при вызове передавать все параметры. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.01.2013, 03:13 |
|
||
|
Как в C из структуры вызывать функцию не задавая аргумент структуры?
|
|||
|---|---|---|---|
|
#18+
Да, если ты тут пытаешься имитировать ооп на C, то ты делаеш это неправильно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.01.2013, 09:46 |
|
||
|
Как в C из структуры вызывать функцию не задавая аргумент структуры?
|
|||
|---|---|---|---|
|
#18+
А разбить одну на две функции - разве не оно? Если функционал юзается однпоточно, то вроде вполне можно. Сначала делаете вашему инстансу setPersonaArrayToWork(Persons* value){personsArray=value;}, и потом вызываете persons.add(newPerson). А второй параметр, например, вообще можно сделать по умолчанию. Если там null, то использует предустановленный ранее через setPersonaArrayToWork, а если там не-null, то используется он. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.01.2013, 14:22 |
|
||
|
Как в C из структуры вызывать функцию не задавая аргумент структуры?
|
|||
|---|---|---|---|
|
#18+
chabapokА разбить одну на две функции - разве не оно? Если функционал юзается однпоточно, то вроде вполне можно. Сначала делаете вашему инстансу setPersonaArrayToWork(Persons* value){personsArray=value;}, и потом вызываете persons.add(newPerson). А второй параметр, например, вообще можно сделать по умолчанию. Если там null, то использует предустановленный ранее через setPersonaArrayToWork, а если там не-null, то используется он. Лучше сразу застрелиться. Все равно потом коллеги забьют ногами. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.01.2013, 14:41 |
|
||
|
Как в C из структуры вызывать функцию не задавая аргумент структуры?
|
|||
|---|---|---|---|
|
#18+
А почему коллеги забьют ногами? может это код преферанса, тогда гусары забьют канделябрами Если на то пошло, то в такой структуре указатель на add - вроде как избыточен, потому что будет в каждом инстансе одинаков и является не вполне удачной попыткой проемулировать на С плюсовой функционал. Коллеги все равно забьют. ...но даже если топикстартеру удастся это сделать, то он тут же захочет что нибудь из серии "jmx на плюсах", как в соседней ветке. А все от распространенного заблуждения, что телега под названием С может быть мерседесом. не надо никаких void (*add)(...) и тогда вместо persons.add(newPerson,&persons), пускай он пишет просто add(newPerson,&persons), и дважды написанное persons не будет ему мозолить глаза. А если ему не нравится такое add, то пускай он помещает его в неймспейс. Ну я б ссылку на структуру поместил бы вначале add(&persons, newPerson) - мне кажется так было бы "ближе" к плюсам. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.01.2013, 18:47 |
|
||
|
Как в C из структуры вызывать функцию не задавая аргумент структуры?
|
|||
|---|---|---|---|
|
#18+
chabapok, Ну, все правильно написали. Указатели на функции в объекте нужны только если требуется полиморфное поведение. Но поведение прямой связи с синтаксисом не имеет. А тут видно что ТС хотел именно синтаксиса похожего на С++ - вот этому не бывать :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.01.2013, 19:58 |
|
||
|
|

start [/forum/topic.php?fid=57&fpage=86&tid=2020534]: |
0ms |
get settings: |
9ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
38ms |
get topic data: |
14ms |
get forum data: |
3ms |
get page messages: |
56ms |
get tp. blocked users: |
2ms |
| others: | 14ms |
| total: | 157ms |

| 0 / 0 |
